[英]In Gradle, is there a way to set JDK to the Eclipse Default?
我正在將我的gradle構建文件集成到支持多個JDK的eclipse開發環境中。 雖然大多數開發人員安裝了多個版本,但正確的行為是使用“系統偏好設置 - > Java->已安裝的JRE”頁面上的“默認JRE”。
有沒有辦法讓gradle設置JAVA_HOME(或“org.gradle.java.home”??)? 如果沒有,對於這樣一組開發人員的最佳方式有什么建議嗎? 對於一個人而言,這不是一個真正的問題,它正試圖找到一種可以擴展到我這一群人的一般方法!
謝謝!
我仍然不完全確定你要求的是什么,但這里有一些不同的看法。
如果您想要做的是讓您的代碼(在Gradle和Eclipse中)編譯以使字節碼與特定版本的Java兼容,請使用類似的東西。 這不會更改Gradle或Eclipse在編譯期間使用的Java版本,只會使最終結果與您指定的版本“字節碼兼容”。 Luis提到的設置默認為在更一般的Java插件級別設置的值。
sourceCompatibility = '1.6' //or '1.5' or '1.7', etc.
默認情況下,Gradle Eclipse插件將在.classpath
文件中生成以下條目。 我相信這總是指向你在Eclipse中指定的默認值,但我可能錯了。
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER" exported="true"/>
如果要更改容器的內容,請在Eclipse中選擇要查找的容器,然后在.classpath
文件中查找正確的容器值。 然后,您可以在構建文件中指定它:
eclipse.classpath.containers 'whatever the container value is'
但是,如果您想要的是能夠更改Gradle運行的JAVA_HOME以匹配Eclipse中選擇的默認值,我認為您將度過難關。 我不確定是否有一個容易以編程方式找到該值的地方。 你可以從相反的方向設置它。 讓開發人員設置JAVA_HOME以匹配他們的Eclipse默認值。 然后,他們可以在Eclipse配置中為JRE引用JAVA_HOME環境變量。
如果你有不同版本的jdk,這很容易
apply plugin: 'java'
apply plugin: 'eclipse'
eclipse {
jdt {
//if you want to alter the java versions (by default they are configured with gradle java plugin settings):
sourceCompatibility = 1.6
targetCompatibility = 1.5
現在,如果您使用不同的JVM 1.6.XX並希望定位到特定的JVM,我不確定
嘗試從Eclipse Marketplace安裝“Gradle IDE Pack”。 我在Eclipse Luna上,可以在“Preferences> Gradle> Arguments”菜單下看到這個選項:
您可以使用'file'命令驗證所選JRE是否已被使用,如本答案中所述 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.