maven-compiler-plugin版本指定方式
maven-compiler-plugin版本指定
spring cloud微服務,生成部署JAR包時提示:
maven-compiler-plugin: 3.8.1不能編譯,需要jre而不是jdk。
1 pom文件添加支持
<!-- 部署版本生成時的插件編譯支持> <dependency> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> </dependency --> <!-- 部署版本生成時的插件編譯支持 -->
一般情況,做這一步就可以瞭,若不可以再進行下面步驟。
2 環境jdk/jre指定
3 Java Build
4 pom文件去除支持
通常上面三個步驟說可以,再次構建時若又提示不能編譯,可註釋掉相應支持,即可。
<!-- 部署版本生成時的插件編譯支持> <dependency> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> </dependency -->
maven-compiler-plugin配置JDK版本
Maven3.x 項目中默認使用 JDK1.5,這顯然不是我想要的。 Apache Maven Compiler Plugin 可以用來配置編譯所用的 JDK版本
倉庫地址
https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-compiler-plugin
- <version>2.3.2</version> 2.4 以上才支持 servlet 3.0
- 我猜去掉 <version>2.3.2</version> 應該默認用最新版,所以是 Servlet 3.1
使用過的配置
- JDK1.7
- Servlet 3.0
<build> <finalName>kerduo</finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin> </plugins> </build>
- JDK1.8
- Servlet 3.1
<build> <finalName>demo</finalName> <plugins> <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> </configuration> </plugin> </plugins> </build>
補充說明
maven-compiler-plugin
:控制編譯 (所以JDK版本是設置這它)spring-boot-maven-plugin
用於打包
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。