2015-05-26 46 views
6

我使用:任務':compileJava'的執行失敗。 >無效源釋放:1.7

  1. gradle這個-2.3
  2. 的javac -version = 1.7
  3. JRE = 1.7
  4. 註冊表編輯器顯示它指向1.7。

但我仍然得到以下錯誤

執行失敗的任務 ':compileJava'。 >無效源釋放:1.7

請讓我知道如何解決它。

+0

我得到同樣的錯誤,你能幫我用這個gradle構建 [鏈接](http://paste.ubuntu.com/12249210/) – hiren

回答

1

嘗試在你的gradle構建如下:

apply plugin: 'java' 

sourceCompatibility = JavaVersion.VERSION_1_7 
targetCompatibility = JavaVersion.VERSION_1_7 

如果這不起作用,請提供您的build.gradle的內容。

5

你說你正在用Java 7運行,但你確定嗎?

因爲據我所知,錯誤發生時正好是在使用您正在運行Gradle的JVM不支持的源/目標級別時。所以,如果我是以此來猜測我會說,gradle這個似乎認爲你的JDK不支持Java 7(所以它的JDK 6或更低)

也許仔細檢查

一)搖籃本身使用JDK 7運行。如果您使用STS gradle工具從Eclipse內部運行gradle,它將使用工作區默認JRE運行gradle。檢查它是否至少是一個JDK 7.(轉到「Windows >>首選項」Java「已安裝的JRE」。帶有「複選標記」的JRE是Gradle將運行的JRE)。 b)如果發現環境變量'JAVA_HOME',Gradle可能會意外地拿起另一個JDK來編譯東西。因此請仔細檢查它是否指向JDK 6或更低版本。

+1

在我的情況下,路徑是正確的,但JAVA_HOME是錯誤 –

+0

在我的情況下,我的IntelliJ項目有java 1.8,但Gradle JVM是1.7。在首選項中更改了Gradle JVM,現在一切正常。 –

3

您可以通過向項目添加「gradle.properties」文件來設置構建Gradle所使用的JDK版本。添加以下屬性:

org.gradle.java.home = <Path to the JDK you want to use for your project> 

我同意上一個答案,您還應該檢查JDK和sourceCompatibility是否匹配。

+0

非常感謝,它工作。謝謝十億。 – user3252097

+0

<3,它使我瘋了 - 順便說一句,有同樣的問題,我搞砸了我的項目通過安裝舊版本的Java來支持Adobe Illustrator在Mac上,這有助於 – Srneczek

0

在我的情況下,Gradle運行在JRE上而不是JDK(錯誤的JAVA_HOME集合)。 將我的JAVA_HOME指向JDK的根,修復了構建。 (當然,假設你的道路已經%JAVA_HOME%\ bin中)

原因

的JDK有編譯Java,而JRE不使用javac。

0

剛剛有1的「bug」。8 java的

解決:FindBugs的給我看的方法標題(在graddle不允許)的ü

0

來檢查$ JAVA_HOME是真的指向默認的Java # echo $JAVA_HOME /usr/lib目錄/ JVM/Java的1.7.0-的OpenJDK # java -version OpenJDK的版本 「1.8.0_151」 如果錯位像上面,修改$ JAVA_HOME在/ etc/profile文件(或可替代的.profile文件/ .bashprofile /在你的用戶的主目錄) 讓我們指向JAVA_HOME =/usr/lib/jvm/java-1.8.0 -openjdk BTW:解決在Centos7下修復Invalid release 1.8

相關問題