GoogleCloudPlatform / GoogleCloudPlatform/cloud-opensource-java

Maven Enforcer Rule itself is prone to dependency conflicts of aether library

Offen
#1,776 4 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
bug p3
Vorherrschende Sprache
Java
Sterne
163
Forks
80
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

I tried to apply the linkage checker enforcer rule to the project when troubleshooting https://github.com/googleapis/java-spanner-jdbc/pull/251#issuecomment-720702035, however the linkage checker failed:

```
[INFO] --- maven-enforcer-plugin:3.0.0-M3:enforce (enforce-linkage-checker) @ google-cloud-spanner-jdbc ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 27.293 s
[INFO] Finished at: 2020-11-03T11:00:01-05:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce (enforce-linkage-checker) on project google-cloud-spanner-jdbc: Execution enforce-linkage-checker of goal org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce failed: An API incompatibility was encountered while executing org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce: java.lang.IllegalAccessError: tried to access method org.eclipse.aether.util.ChecksumUtils.toHexString([B)Ljava/lang/String; from class org.eclipse.aether.connector.basic.ChecksumCalculator$Checksum
[ERROR] -----------------------------------------------------
[ERROR] realm = plugin>org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/Users/suztomo/.m2/repository/org/apache/maven/plugins/maven-enforcer-plugin/3.0.0-M3/maven-enforcer-plugin-3.0.0-M3.jar
[ERROR] urls[1] = file:/Users/suztomo/.m2/repository/com/google/cloud/tools/linkage-checker-enforcer-rules/1.5.4/linkage-checker-enforcer-rules-1.5.4.jar
[ERROR] urls[2] = file:/Users/suztomo/.m2/repository/com/google/cloud/tools/dependencies/1.5.4/dependencies-1.5.4.jar
[ERROR] urls[3] = file:/Users/suztomo/.m2/repository/org/apache/bcel/bcel/6.5.0/bcel-6.5.0.jar
[ERROR] urls[4] = file:/Users/suztomo/.m2/repository/org/apache/maven/resolver/maven-resolver-transport-http/1.4.2/maven-resolver-transport-http-1.4.2.jar
[ERROR] urls[5] = file:/Users/suztomo/.m2/repository/org/apache/httpcomponents/httpcore/4.4.10/httpcore-4.4.10.jar
[ERROR] urls[6] = file:/Users/suztomo/.m2/repository/org/apache/maven/resolver/maven-resolver-transport-file/1.4.2/maven-resolver-transport-file-1.4.2.jar
[ERROR] urls[7] = file:/Users/suztomo/.m2/repository/org/apache/maven/resolver/maven-resolver-connector-basic/1.4.2/maven-resolver-connector-basic-1.4.2.jar
[ERROR] urls[8] = file:/Users/suztomo/.m2/repository/org/apache/httpcomponents/httpclient/4.5.12/httpclient-4.5.12.jar
[ERROR] urls[9] = file:/Users/suztomo/.m2/repository/commons-logging/commons-logging/1.2/commons-logging-1.2.jar
[ERROR] urls[10] = file:/Users/suztomo/.m2/repository/org/relaxng/jing/20181222/jing-20181222.jar
[ERROR] urls[11] = file:/Users/suztomo/.m2/repository/net/sf/saxon/Saxon-HE/9.6.0-4/Saxon-HE-9.6.0-4.jar
[ERROR] urls[12] = file:/Users/suztomo/.m2/repository/xerces/xercesImpl/2.9.1/xercesImpl-2.9.1.jar
[ERROR] urls[13] = file:/Users/suztomo/.m2/repository/xml-apis/xml-apis/1.0.b2/xml-apis-1.0.b2.jar
[ERROR] urls[14] = file:/Users/suztomo/.m2/repository/isorelax/isorelax/20030108/isorelax-20030108.jar
[ERROR] urls[15] = file:/Users/suztomo/.m2/repository/commons-cli/commons-cli/1.4/commons-cli-1.4.jar
[ERROR] urls[16] = file:/Users/suztomo/.m2/repository/com/google/guava/guava/29.0-jre/guava-29.0-jre.jar
[ERROR] urls[17] = file:/Users/suztomo/.m2/repository/com/google/guava/failureaccess/1.0.1/failureaccess-1.0.1.jar
[ERROR] urls[18] = file:/Users/suztomo/.m2/repository/com/google/guava/listenablefuture/9999.0-empty-to-avoid-conflict-with-guava/listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar
[ERROR] urls[19] = file:/Users/suztomo/.m2/repository/com/google/code/findbugs/jsr305/3.0.2/jsr305-3.0.2.jar
[ERROR] urls[20] = file:/Users/suztomo/.m2/repository/org/checkerframework/checker-qual/2.11.1/checker-qual-2.11.1.jar
[ERROR] urls[21] = file:/Users/suztomo/.m2/repository/com/google/errorprone/error_prone_annotations/2.3.4/error_prone_annotations-2.3.4.jar
[ERROR] urls[22] = file:/Users/suztomo/.m2/repository/com/google/j2objc/j2objc-annotations/1.3/j2objc-annotations-1.3.jar
[ERROR] urls[23] = file:/Users/suztomo/.m2/repository/org/codehaus/mojo/extra-enforcer-rules/1.3/extra-enforcer-rules-1.3.jar
[ERROR] urls[24] = file:/Users/suztomo/.m2/repository/org/apache/maven/shared/maven-dependency-tree/2.2/maven-dependency-tree-2.2.jar
[ERROR] urls[25] = file:/Users/suztomo/.m2/repository/org/eclipse/aether/aether-util/0.9.0.M2/aether-util-0.9.0.M2.jar
[ERROR] urls[26] = file:/Users/suztomo/.m2/repository/junit/junit/4.11/junit-4.11.jar
[ERROR] urls[27] = file:/Users/suztomo/.m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar
[ERROR] urls[28] = file:/Users/suztomo/.m2/repository/commons-codec/commons-codec/1.12/commons-codec-1.12.jar
[ERROR] urls[29] = file:/Users/suztomo/.m2/repository/org/apache/maven/shared/maven-common-artifact-filters/3.1.0/maven-common-artifact-filters-3.1.0.jar
[ERROR] urls[30] = file:/Users/suztomo/.m2/repository/org/apache/maven/shared/maven-shared-utils/3.1.0/maven-shared-utils-3.1.0.jar
[ERROR] urls[31] = file:/Users/suztomo/.m2/repository/commons-io/commons-io/2.5/commons-io-2.5.jar
[ERROR] urls[32] = file:/Users/suztomo/.m2/repository/org/sonatype/sisu/sisu-inject-bean/1.4.2/sisu-inject-bean-1.4.2.jar
[ERROR] urls[33] = file:/Users/suztomo/.m2/repository/org/sonatype/sisu/sisu-guice/2.1.7/sisu-guice-2.1.7-noaop.jar
[ERROR] urls[34] = file:/Users/suztomo/.m2/repository/org/sonatype/aether/aether-util/1.7/aether-util-1.7.jar
[ERROR] urls[35] = file:/Users/suztomo/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar
[ERROR] urls[36] = file:/Users/suztomo/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.7.1/plexus-component-annotations-1.7.1.jar
[ERROR] urls[37] = file:/Users/suztomo/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar
[ERROR] urls[38] = file:/Users/suztomo/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar
[ERROR] urls[39] = file:/Users/suztomo/.m2/repository/org/codehaus/plexus/plexus-utils/3.3.0/plexus-utils-3.3.0.jar
[ERROR] urls[40] = file:/Users/suztomo/.m2/repository/org/apache/maven/enforcer/enforcer-api/3.0.0-M3/enforcer-api-3.0.0-M3.jar
[ERROR] urls[41] = file:/Users/suztomo/.m2/repository/org/apache/maven/enforcer/enforcer-rules/3.0.0-M3/enforcer-rules-3.0.0-M3.jar
[ERROR] urls[42] = file:/Users/suztomo/.m2/repository/org/apache/commons/commons-lang3/3.8.1/commons-lang3-3.8.1.jar
[ERROR] urls[43] = file:/Users/suztomo/.m2/repository/org/beanshell/bsh/2.0b4/bsh-2.0b4.jar
[ERROR] urls[44] = file:/Users/suztomo/.m2/repository/org/apache/maven/resolver/maven-resolver-util/1.4.1/maven-resolver-util-1.4.1.jar
[ERROR] Number of foreign imports: 1
[ERROR] import: Entry[import from realm ClassRealm[project>com.google.cloud:google-cloud-spanner-jdbc:1.17.3-SNAPSHOT, parent: ClassRealm[maven.api, parent: null]]]
[ERROR]
[ERROR] -----------------------------------------------------
```

Probably the same cause as https://github.com/GoogleCloudPlatform/cloud-opensource-java/issues/1091, but as it happened twice, we should better to document or show message for such situation.

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.