Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven 3.7.0编译java 8项目遇到不兼容API_Java_Maven - Fatal编程技术网

Maven 3.7.0编译java 8项目遇到不兼容API

Maven 3.7.0编译java 8项目遇到不兼容API,java,maven,Java,Maven,当我使用以下命令编译Java项目时: mvn install 抛出此错误: [INFO] Changes detected - recompiling the module! [INFO] Compiling 1158 source files to /var/lib/jenkins/workspace/xycq-web-ci/cqnews-online/target/classes [INFO] --------------------------------------------

当我使用以下命令编译Java项目时:

mvn install
抛出此错误:

    [INFO] Changes detected - recompiling the module!
[INFO] Compiling 1158 source files to /var/lib/jenkins/workspace/xycq-web-ci/cqnews-online/target/classes
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 9.172 s
[INFO] Finished at: 2018-06-16T12:47:50+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-compile) on project cqnews-online: Execution default-compile of goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile failed: An API incompatibility was encountered while executing org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile: java.lang.NoSuchMethodError: org.codehaus.plexus.compiler.CompilerError: method <init>(Ljava/lang/String;ZIIIILjava/lang/String;)V not found
[ERROR] -----------------------------------------------------
[ERROR] realm =    plugin>org.apache.maven.plugins:maven-compiler-plugin:3.7.0
[ERROR] strategy = org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy
[ERROR] urls[0] = file:/opt/haishu/local/repo/m2/repository/org/apache/maven/plugins/maven-compiler-plugin/3.7.0/maven-compiler-plugin-3.7.0.jar
[ERROR] urls[1] = file:/opt/haishu/local/repo/m2/repository/org/codehaus/plexus/plexus-compiler-javac/1.8.1/plexus-compiler-javac-1.8.1.jar

解决此问题的两个步骤:

  • 更改为eclipse编译器
  • 将版本升级到2.x+
  • 以下是配置:

     <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.7.0</version>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                        <encoding>UTF-8</encoding>
                    </configuration>
                </plugin>
    
               <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.7.0</version>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                        <encoding>UTF-8</encoding>
                        <compilerId>eclipse</compilerId>
                    </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>org.codehaus.plexus</groupId>
                            <artifactId>plexus-compiler-eclipse</artifactId>
                            <version>2.8.4</version>
                        </dependency>
                        <dependency>
                            <groupId>org.codehaus.plexus</groupId>
                            <artifactId>plexus-compiler-javac</artifactId>
                            <version>2.8.4</version>
                        </dependency>
                    </dependencies>
                </plugin>
    
    
    org.apache.maven.plugins
    maven编译器插件
    3.7.0
    1.8
    1.8
    UTF-8
    日食
    org.codehaus.plexus
    plexus编译器eclipse
    2.8.4
    org.codehaus.plexus
    丛编译器javac
    2.8.4
    
    jenkins正在编译您的项目?也许jenkins有不同的插件版本,并且出现了
    NoSuchMethodError
               <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.7.0</version>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                        <encoding>UTF-8</encoding>
                        <compilerId>eclipse</compilerId>
                    </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>org.codehaus.plexus</groupId>
                            <artifactId>plexus-compiler-eclipse</artifactId>
                            <version>2.8.4</version>
                        </dependency>
                        <dependency>
                            <groupId>org.codehaus.plexus</groupId>
                            <artifactId>plexus-compiler-javac</artifactId>
                            <version>2.8.4</version>
                        </dependency>
                    </dependencies>
                </plugin>