I've already asked this on StackOverflow ( https://stackoverflow.com/questions/54385789/suddenly-getting-nosuchmethoderror-org-codehaus-plexus-compiler-compilerconfig), but I'm getting nowhere, and all of our builds are blocked by this.
This is what we're seeing on the CI server: ------------------------ [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.6.1:compile (default-compile) on project CheckoutMs: Execution default-compile of goal org.apache.maven.plugins:maven-compiler-plugin:3.6.1:compile failed: An API incompatibility was encountered while executing org.apache.maven.plugins:maven-compiler-plugin:3.6.1:compile: java.lang.NoSuchMethodError: org.codehaus.plexus.compiler.CompilerConfiguration.isParameters()Z [ERROR] ----------------------------------------------------- [ERROR] realm = plugin>org.apache.maven.plugins:maven-compiler-plugin:3.6.1 [ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy [ERROR] urls[0] = file:/home/userid/.m2/repository/org/apache/maven/plugins/maven-compiler-plugin/3.6.1/maven-compiler-plugin-3.6.1.jar [ERROR] urls[1] = file:/home/userid/.m2/repository/org/codehaus/groovy/groovy-eclipse-compiler/3.3.0-01/groovy-eclipse-compiler-3.3.0-01.jar [ERROR] urls[2] = file:/home/userid/.m2/repository/org/codehaus/plexus/plexus-component-annotations/1.6/plexus-component-annotations-1.6.jar [ERROR] urls[3] = file:/home/userid/.m2/repository/org/apache/xbean/xbean-reflect/3.7/xbean-reflect-3.7.jar [ERROR] urls[4] = file:/home/userid/.m2/repository/com/google/collections/google-collections/1.0/google-collections-1.0.jar [ERROR] urls[5] = file:/home/userid/.m2/repository/org/codehaus/groovy/groovy-eclipse-batch/2.5.5-01/groovy-eclipse-batch-2.5.5-01.jar [ERROR] urls[6] = file:/home/userid/.m2/repository/org/sonatype/sisu/sisu-inject-bean/1.4.2/sisu-inject-bean-1.4.2.jar [ERROR] urls[7] = file:/home/userid/.m2/repository/org/sonatype/sisu/sisu-guice/2.1.7/sisu-guice-2.1.7-noaop.jar [ERROR] urls[8] = file:/home/userid/.m2/repository/org/codehaus/plexus/plexus-utils/2.0.4/plexus-utils-2.0.4.jar [ERROR] urls[9] = file:/home/userid/.m2/repository/org/sonatype/aether/aether-util/1.7/aether-util-1.7.jar [ERROR] urls[10] = file:/home/userid/.m2/repository/org/codehaus/plexus/plexus-interpolation/1.14/plexus-interpolation-1.14.jar [ERROR] urls[11] = file:/home/userid/.m2/repository/org/sonatype/plexus/plexus-sec-dispatcher/1.3/plexus-sec-dispatcher-1.3.jar [ERROR] urls[12] = file:/home/userid/.m2/repository/org/sonatype/plexus/plexus-cipher/1.4/plexus-cipher-1.4.jar [ERROR] urls[13] = file:/home/userid/.m2/repository/org/apache/maven/shared/maven-shared-utils/3.1.0/maven-shared-utils-3.1.0.jar [ERROR] urls[14] = file:/home/userid/.m2/repository/commons-io/commons-io/2.5/commons-io-2.5.jar [ERROR] urls[15] = file:/home/userid/.m2/repository/org/apache/maven/shared/maven-shared-incremental/1.1/maven-shared-incremental-1.1.jar [ERROR] urls[16] = file:/home/userid/.m2/repository/org/ow2/asm/asm/6.0_ALPHA/asm-6.0_ALPHA.jar [ERROR] urls[17] = file:/home/userid/.m2/repository/com/thoughtworks/qdox/qdox/2.0-M5/qdox-2.0-M5.jar [ERROR] urls[18] = file:/home/userid/.m2/repository/org/codehaus/plexus/plexus-compiler-api/2.8.1/plexus-compiler-api-2.8.1.jar [ERROR] urls[19] = file:/home/userid/.m2/repository/org/codehaus/plexus/plexus-compiler-manager/2.8.1/plexus-compiler-manager-2.8.1.jar [ERROR] urls[20] = file:/home/userid/.m2/repository/org/codehaus/plexus/plexus-compiler-javac/2.8.1/plexus-compiler-javac-2.8.1.jar [ERROR] Number of foreign imports: 1 [ERROR] import: Entry[import from realm ClassRealm[maven.api, parent: null]] ------------------------------- This started happening in one project, among several, on the first build after midnight on 1/26. The previous build, just before midnight, didn't fail with this. Jenkins displays all the git commit ids that it checked out for the builds, and they are identical for both builds. That seems to indicate that there were no code changes between the successful build and the failed build. This is only failing on the CI server, but it's only failing for one particular project out of several. As far as I can see, it's using Maven 3.3.9, and has been for quite a while. The application pom doesn't have any of the dependencies listed above, either direct or indirect. I did examine the particular class and method mentioned in the error. That method is not present in version 2.8.1 of the plexus-api. It was added in version 2.8.3. Besides that, I can see no other useful information from this, or understand how to resolve this.
