卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

在Mac系統(tǒng)上指定不同JDK版本進行ant打包

---在Mac系統(tǒng)上使用ant進行打包時,經(jīng)常會遇到服務(wù)器需要不同JDK版本的情況。通常我們會通過修改.bash_profile中的JAVA_HOME環(huán)境變量來指定所需的JDK版本,然后執(zhí)行sourc

---

在Mac系統(tǒng)上使用ant進行打包時,經(jīng)常會遇到服務(wù)器需要不同JDK版本的情況。通常我們會通過修改.bash_profile中的JAVA_HOME環(huán)境變量來指定所需的JDK版本,然后執(zhí)行source .bash_profile命令來生效,并使用ant進行打包。然而,隨著系統(tǒng)升級,這種方法可能會失效,尤其是在蘋果Mac系統(tǒng)下JDK環(huán)境變量相對復(fù)雜的情況下。本文將介紹如何在Mac系統(tǒng)上指定不同的JDK版本進行ant打包。

---

環(huán)境準備

在作者的電腦上,存在三套JDK版本:jdk1.6、jdk1.7和jdk1.8。同時,ant版本為1.10.1(通過macPort更新的最新版本)。當嘗試將JAVA_HOME環(huán)境變量設(shè)置為jdk1.7時,發(fā)現(xiàn)連ant --version命令都不支持,要求不能低于jdk1.8。因此,通過修改系統(tǒng)環(huán)境變量的方式無法更改JDK版本。最終,作者成功恢復(fù)了JDK1.8版本。

設(shè)置javac編譯器位置

經(jīng)過查閱資料,特別是ant的官方文檔,作者發(fā)現(xiàn)可以通過設(shè)置fork和executable屬性來指定javac編譯器的位置,從而選擇特定的JDK版本。經(jīng)過成功執(zhí)行,確認當前使用的是JDK1.7。作者反復(fù)測試發(fā)現(xiàn),executable參數(shù)必須指向本機的jdk1.7/bin/javac程序,可以通過查看編譯后的.class文件來驗證效果。

靈活設(shè)置fork和executable屬性

由于ant可能有多個打包任務(wù),作者將fork和executable屬性設(shè)置為property,以便多次使用。值得注意的是,如果將fork設(shè)置為'no',則會使用本機的環(huán)境變量。這種靈活的設(shè)置方式能夠讓用戶指定任意的JDK版本,但每個用戶都需要制定自己機器的環(huán)境。

指定java的target版本

除了設(shè)置fork和executable屬性外,還可以通過指定java的target版本來選擇特定的JDK版本。作者指出,在設(shè)置source時,如果不同時設(shè)置target,可能會收到警告提示。值得注意的是,需要保持source和target版本一致,否則可能出現(xiàn)問題。作者驗證了指定jdk7的效果,并成功打包出符合預(yù)期的結(jié)果。

同時設(shè)置source、target、fork和executable屬性

最后,作者也測試了同時設(shè)置source、target、fork和executable屬性的效果。結(jié)果顯示,source優(yōu)先,系統(tǒng)展示使用了jdk1.6版本。因此,建議在工作中愉快地使用source和target屬性,它們能夠幫助更靈活地指定所需的JDK版本。

通過本文的探索和總結(jié),讀者可以更好地在Mac系統(tǒng)上指定不同的JDK版本進行ant打包。靈活運用fork、executable、source和target屬性,可以輕松應(yīng)對各種服務(wù)器需求,確保打包過程順利完成。愿本文能幫助讀者更好地解決在Mac系統(tǒng)上JDK版本管理的挑戰(zhàn)。

標簽: