簡體   English   中英

JDK版本不在允許范圍內

[英]JDK Version Not in Allowed Range

我正在使用Mule CE 3.7 ,后者使用Maven來編譯其項目。 問題是,在編譯時,他返回此錯誤:

[錯誤]檢測到的JDK版本:1.8.0-60不在允許的范圍[1.7,1.8]中。

我已經做了發現的所有解決方案,配置了JAVA_HOME和PATH。

如果我運行Java命令,它們將向我返回以下內容:

MBP-de-axz:~ axz$ java -version
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

MBP-de-axz:~ axz$ javac -version
javac 1.8.0_60

MBP-de-axz:~ axz$ mvn -version
Apache Maven 3.3.3 (7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T08:57:37-03:00)
Maven home: /usr/local/Cellar/maven/3.3.3/libexec
Java version: 1.8.0_60, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home/jre
Default locale: pt_BR, platform encoding: UTF-8
OS name: "mac os x", version: "10.10.1", arch: "x86_64", family: "mac"

我已經像這樣配置了項目的Pom文件:

<requireJavaVersion>
     <version>[1.7,1.9)</version>
</requireJavaVersion>

因此,所有人都指向相同的Java版本。 這是在我的Mac和Windows中發生的。 僅當我更改為Java 1.7時該項目才能工作,但是我可以使用1.7,因為我的一個庫使用Java 1.8。

任何人都對它有什么想法?

謝謝 !

您可能要使用[1.7,1.9)作為版本范圍。 這意味着它接受1.7 (含)至1.9 (不含)之間的版本。 由於1.8.0_60大於1.8 ,因此超出了先前版本范圍。 順便說一句, [1.8)會同時包含和排除1.8 ,所以這不起作用。

問題是Mule還不兼容JDK 1.8,我需要使用JDK 1.7

我應該已經閱讀了這些要求。

當Maven JDK版本和PROJECT JDK版本不匹配時,會發生此錯誤。

為了解決該問題,請嘗試首先使用以下命令找出mvn jdk版本

"mvn --version"

然后使用set JAVA_HOME="c:\\jdk_location_here"設置所需的JDK版本。 如果重新運行"mvn --version" 您將在此處看到更新的JDK版本。現在嘗試運行您的構建。

長期:在環境變量中設置JAVA_HOME。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM