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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

java maven 编辑器,Maven compiler 插件

發(fā)布時(shí)間:2024/1/8 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java maven 编辑器,Maven compiler 插件 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

此插件用于對(duì)當(dāng)前項(xiàng)目的源碼進(jìn)行編譯。從3.0開臺(tái),默認(rèn)編譯器是javax.tools.JavaCompiler(如果你的java為1.6及以上版本)。如果想要強(qiáng)制使用javac,則必須配置插件選項(xiàng)forceJavacCompilerUse。另外要注意的是,目前默認(rèn)的 source 為1.5,并且默認(rèn)的target也為1.5,這與Maven時(shí)所依賴的jdk無關(guān)。如果要更改這些默認(rèn)值,則需要去設(shè)置java編譯器的 -source 和 -target 選項(xiàng)。

compile

用于對(duì)項(xiàng)目中的源碼文件進(jìn)行編譯。這個(gè)goal 默認(rèn)被綁定到了 compile phase 可以在Maven對(duì)項(xiàng)目構(gòu)建的生命周期中自動(dòng)執(zhí)行。

testCompile

用于對(duì)項(xiàng)目中的測(cè)試代碼文件進(jìn)行編譯。這個(gè)goal默認(rèn)已經(jīng)被綁定到 testCompile phase,可以在Maven對(duì)項(xiàng)目構(gòu)建的生命周期中自動(dòng)執(zhí)行。

設(shè)置java編譯器的 -source 和 -target 參數(shù)

有時(shí)候可能需要將某個(gè)項(xiàng)目編譯為與當(dāng)前使用版本不同的版本。javac 命令可以接受 -source 和 -target 參數(shù)用于對(duì)源代碼和生成的目標(biāo)字節(jié)源所運(yùn)行的java環(huán)境進(jìn)行說明,此插件也有類似的配置。

例如,如果使用的是java8語法編寫的源碼(-source 1.8),并且希望編譯的類與 JVM1.8(-target 1.8)兼容,則可以添加發(fā)下兩個(gè)屬性,它們是插件默認(rèn)參數(shù)的名稱。

[...]

1.8

1.8

[...]

或者像下面這樣直接對(duì)此插件進(jìn)行配置

[...]

[...]

org.apache.maven.plugins

maven-compiler-plugin

3.7.0

1.8

1.8

[...]

[...]

注意:僅僅設(shè)置 target 選項(xiàng),并不能保證你的代碼在指定版本的jre上運(yùn)行。設(shè)置source 選項(xiàng)也不能保證你的代碼在指定的jdk上編譯。要用特定的與用于啟動(dòng)Maven的版本不同的JKD版本編譯代碼,可以參閱下面小節(jié)的內(nèi)容。

使用其他JDK編譯

要使用不同的JDK對(duì)項(xiàng)目進(jìn)行構(gòu)建,最佳方式是使用工具鏈機(jī)制(toolchains插件)。在構(gòu)建項(xiàng)目的過程中,每個(gè)步驟都需要JDK中的一個(gè)工具來執(zhí)行,如編譯源碼,生成javadoc,運(yùn)行單元測(cè)試或生成jar。工具鏈就是用于指定JDK路徑,以集中配置的方式把指定的JDK應(yīng)用于所有插件。詳細(xì)內(nèi)容可以參閱Maven 中 toolchains插件的幫助文檔。

除了使用toolchains插件外,還可以使用compilerVersion參數(shù)指定compiler插件所使用的編譯器版本。只是必須把fork參數(shù)設(shè)置為true,它才能正常工作。

[...]

[...]

org.apache.maven.plugins

maven-compiler-plugin

3.7.0

true

true

1.3

[...]

[...]

為了避免硬編譯文件系統(tǒng)路徑,可以使用屬性。

$ {JAVA_1_4_HOME} / bin / javac executable>

然后每個(gè)開發(fā)人員在settings.xml中定義該屬性,或設(shè)置一個(gè)環(huán)境變量,以便pom.xml保持可移植性。

[...]

[...]

compiler

C:\Program Files\Java\j2sdk1.4.2_09

[...]

compiler

總結(jié)

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

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