Maven工程pom中如何定義jdk版本
Maven工程pom定義jdk版本
今天把之前做的項目導(dǎo)進(jìn)eclipse,然后發(fā)現(xiàn)報錯,一些類在1.6中不支持,需要將JDK版本設(shè)置為1.7,我直接通過eclipse中的提示進(jìn)行更改,然后update project一下,發(fā)現(xiàn)又回到了SE1.6版本,我想一定是在pom中定義了這個java版本,查看pom文件,發(fā)現(xiàn)編譯插件定義的1.6版本,代碼:
<plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> </configuration> </plugin>
所以將編譯版本更改為1.7之后就好了,
<plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin>
注意:這里說的是通過工程的編譯插件
另外,在一般的工程中定義當(dāng)前項目所用的jdk版本
<properties>
<...> ...<...>
<java.version>1.8</java.version>
<...> ...<...>
</properties>
這個properties屬性配置一般配置在<parent>標(biāo)簽之后,如果引用了自己公司的框架,應(yīng)該在框架內(nèi)就有定義版本,則不需引入,總之,按需要進(jìn)行設(shè)置。設(shè)置之后可以在編譯插件中引入即可:
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>${java.version}</source>
<target>${java.version}</target>
</configuration>
</plugin>
配置pom的jdk注意事項
<!-- 添加修改jdk插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
這個代碼或許你會說很簡單,如果配置完出現(xiàn)紅叉就很尷尬了,eclipse為每個項目都配置了一套自己的運行版本,就是圖下

新建maven項目好像默認(rèn)是jre1.5的,然后老版本的運行環(huán)境跟不上我們開發(fā)的腳步,配置成1.7之后必須得到Project Facets里把對于的java版本換成1.7,
否則會出現(xiàn)版本不匹配錯誤,就是Java compiler level does not match the version之類的錯誤,切記切記
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java中controller層如何接收帶參數(shù)的查詢
本文主要介紹了Java中controller層如何接收帶參數(shù)的查詢,在控制器層接收帶參數(shù)的查詢可以通過多種方式實現(xiàn),下面就詳細(xì)的介紹一下,感興趣的可以了解一下2023-08-08
Hibernate框架數(shù)據(jù)分頁技術(shù)實例分析
這篇文章主要介紹了Hibernate框架數(shù)據(jù)分頁技術(shù),結(jié)合實例形式分析了Hibernate框架實現(xiàn)數(shù)據(jù)分頁的原理,步驟與相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2016-03-03
SpringBoot?web靜態(tài)資源映射實現(xiàn)步驟詳解
在springBoot中的靜態(tài)資源的映射是通過SpringMVC中的resourceHttpRequestHandler來進(jìn)行實現(xiàn)的。在該請求映射器中默認(rèn)規(guī)定了,SpringBoot會將classPath或者ServletContext下的/static?(/public、/resources?或?/META-INF/resources)目錄中,存放靜態(tài)資源2022-09-09
Spring?cloud?Hystrix注解初始化源碼過程解讀
這篇文章主要為大家介紹了Hystrix初始化部分,我們從源碼的角度分析一下@EnableCircuitBreaker以及@HystrixCommand注解的初始化過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助2023-12-12
Java基于ReadWriteLock實現(xiàn)鎖的應(yīng)用
這篇文章主要介紹了Java基于ReadWriteLock實現(xiàn)鎖的應(yīng)用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-10-10
解讀maven項目中Tomcat10與JSTL的問題匯總(Debug親身經(jīng)歷)
這篇文章主要介紹了解讀maven項目中Tomcat10與JSTL的問題匯總(Debug親身經(jīng)歷),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07

