Maven項目編譯失敗:
[ERROR] COMPILATION ERROR : [INFO] ------------------------------------------------------------- [ERROR] /opt/ihome/jenkins/jobs/dev-aladdin-order/workspace/aladdin-order-intf/src/main/java/com/ihomefnt/aladdin/common/utils/RemoteUtil.java:[148,50] 錯誤: -source 1.7 中不支持 lambda 表達式
疑問:
1. Jenkins 服務器只安裝了1.8版本的JDK,且Jenkins配置指定了JDK的路徑。
沒搞清楚,但解決思路是想通過指定JDK版本未1.8版本來編譯。
maven配置全局的jdk和配置局部的jdk
-
設置全局的jdk,在setting.xml文件中的profiles元素下添加如下profile元素
<profile> <id>jdk17</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.7</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile>
-
設置局部的jdk,在項目的pom,xml文件中添加如下build元素
<project> ... <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> </project>