2014-02-14 24 views
0

我想編譯一個與Java 1.6兼容的應用程序,並認爲要這樣做我必須設置targetCompatibility爲「1.6」,但是當我部署應用程序(應用程序服務器與JVM 1.6上運行),並嘗試啓動它,我得到以下異常:gradle CompileJava任務不考慮(源|目標)兼容性屬性java.lang.UnsupportedClassVersionError:主要版本不好

java.lang.UnsupportedClassVersionError: JVMCFRE003 bad major version; class=com/foo/SomeClass, offset=6 

我JAVA_HOME設置爲1.7,但我維護兩個源代碼的分支,一個支持java 1.7和一個支持1.6的分支,所以每次切換上下文時都不必設置JAVA_HOME變量。

  1. 這是gradle中的錯誤嗎?
  2. 有沒有更好的方法?

回答

0

大聲笑。一分鐘我問這個問題,然後我解決它。原因是因爲我通過設置它自己的java_home變量的git bash終端來調用gradle腳本。當我打開一個vanilla命令提示符並運行構建時,任務拋出Java 1.6錯誤(鑽石語法中的異常)。沒關係:)