You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Naman Nigam (Jira)" <ji...@apache.org> on 2021/06/29 01:17:00 UTC

[jira] [Created] (MDEP-759) 'Dependency not found' with Java-17 while analyzing

Naman Nigam created MDEP-759:
--------------------------------

             Summary: 'Dependency not found' with Java-17 while analyzing
                 Key: MDEP-759
                 URL: https://issues.apache.org/jira/browse/MDEP-759
             Project: Maven Dependency Plugin
          Issue Type: Bug
          Components: analyze
    Affects Versions: 3.2.0
            Reporter: Naman Nigam


One of [the project|https://github.com/mrwilson/java-8-matchers] that I was looking into has these relevant configurations:

    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>

    <plugin>
        <artifactId>maven-dependency-plugin</artifactId>
        <version>3.2.0</version>
        <configuration>
            <failOnWarning>true</failOnWarning>
        </configuration>
        <executions>
            <execution>
                <goals>
                    <goal>analyze-only</goal>
                </goals>
            </execution>
        </executions>
    </plugin>


    <dependency>
        <groupId>org.hamcrest</groupId>
        <artifactId>hamcrest</artifactId>
        <version>2.2</version>
        <!-- not scoped to test -->
    </dependency>

The build succeeds as expected on executing `mvn clean verify` (apache-maven-3.6.3, java : 17-ea). I have now, made a change in the properties to **replace**  the source and target with release as:

    <maven.compiler.release>17</maven.compiler.release>

and the logs on the terminal read 

>     [INFO] --- maven-dependency-plugin:3.2.0:analyze-only (default) @ java-8-matchers ---
>     [WARNING] Non-test scoped test only dependencies found:
>     [WARNING]    org.hamcrest:hamcrest:jar:2.2:compile

leading to a failure(because of warning)! Why/How is the dependency treated differently with the upgrade in the Java version? Any way to fix this?


----------


If it might be of help, the debug logs for this goal reads:

```
[DEBUG] Configuring mojo org.apache.maven.plugins:maven-dependency-plugin:3.2.0:analyze-only from plugin realm ClassRealm[plugin>org.apache.maven.plugins:maven-dependency-plugin:3.2.0, parent: jdk.internal.loader.ClassLoaders$AppClassLoader@579bb367]
[DEBUG] Configuring mojo 'org.apache.maven.plugins:maven-dependency-plugin:3.2.0:analyze-only' with basic configurator -->
[DEBUG]   (f) analyzer = default
[DEBUG]   (f) baseDir = .../java-8-matchers
[DEBUG]   (f) failOnWarning = true
[DEBUG]   (f) ignoreNonCompile = false
[DEBUG]   (f) ignoreUnusedRuntime = false
[DEBUG]   (f) outputDirectory = .../java-8-matchers/target
[DEBUG]   (f) outputXML = false
[DEBUG]   (f) project = MavenProject: uk.co.probablyfine:java-8-matchers:2.0.0-SNAPSHOT @ .../java-8-matchers/pom.xml
[DEBUG]   (f) scriptableFlag = $$%%%
[DEBUG]   (f) scriptableOutput = false
[DEBUG]   (f) skip = false
[DEBUG]   (f) verbose = false
[DEBUG] -- end configuration --
[WARNING] Non-test scoped test only dependencies found:
[WARNING]    org.hamcrest:hamcrest:jar:2.2:compile

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:3.2.0:analyze-only (default) on project java-8-matchers: Dependency problems found -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:3.2.0:analyze-only (default) on project java-8-matchers: Dependency problems found
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:215)
```
Reproduce using:

1. Git checkout [this branch|https://github.com/namannigam/java-8-matchers/tree/modular-artifact].
2. Configure maven to use Java-17.
3. Edit the `failOnWarning` property to `true`.
4. Execute `mvn clean verify`.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)