日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

maven-compiler-plugin

發(fā)布時間:2025/5/22 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 maven-compiler-plugin 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

maven是個項目管理工具,如果我們不告訴它我們的代碼要使用什么樣的jdk版本編譯的話,它就會用

maven-compiler-plugin默認(rèn)的jdk版本來進(jìn)行處理,這樣就容易出現(xiàn)版本不匹配的問題,以至于可能導(dǎo)致編譯不通過的問題。例如代碼中要是使用上了jdk1.7的新特性,但是maven在編譯的時候使用的是jdk1.6的版本,那這一段代碼是完全不可能編譯成.class文件的。為了處理這一種情況的出現(xiàn),在構(gòu)建maven項目的時候,我習(xí)慣性第一步就是配置maven-compiler-plugin插件。

下面看一下這個插件該怎么使用

<plugin>????<groupId>org.apache.maven.plugins</groupId>????<artifactId>maven-compiler-plugin</artifactId>????<version>3.1</version>????<configuration>????????<source>1.6</source>?????<!--?源代碼使用的開發(fā)版本?-->????????<target>1.6</target>?????<!--?需要生成的目標(biāo)class文件的編譯版本?--><!--?一般而言,target與source是保持一致的,但是,有時候為了讓程序能在其他版本的jdk中運行(對于低版本目標(biāo)jdk,源代碼中需要沒有使用低版本jdk中不支持的語法),會存在target不同于source的情況?-->????<!--?這下面的是可選項?-->????????<meminitial>128m</meminitial>????????<maxmem>512m</maxmem>????????<fork>true</fork>?<!--,fork一般在使用不同于默認(rèn)的JDK去編譯的時候?-->?<compilerVersion>1.3</compilerVersion>????????<!--?這個選項用來傳遞編譯器自身不包含但是卻支持的參數(shù)選項?-->????????<compilerArgument>-verbose?-bootclasspath?${java.home}\lib\rt.jar</compilerArgument>????????</configuration> </plugin>


很多時候,大家都喜歡在eclipse中直接生成webapp的maven項目,但是這樣子會產(chǎn)生很多問題,特別是使用的jdk不是maven默認(rèn)支持的jdk的時候。

一般情況下,我是先建立一個最基本的maven項目,類型如下

<packaging>jar</packaging>

然后設(shè)置好jdk版本,再改為

<packaging>war</packaging>

再用eclipse update一下maven項目,eclipse的maven插件自會幫我們建立好此webapp在當(dāng)前jdk下支持的各種默認(rèn)參數(shù),然后再優(yōu)調(diào)一下就可以使用了,會省去很多麻煩事。


轉(zhuǎn)載于:https://blog.51cto.com/hanchengen/1857253

總結(jié)

以上是生活随笔為你收集整理的maven-compiler-plugin的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。