Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JDK版本不在允许的范围内_Java_Maven_Mule - Fatal编程技术网

Java JDK版本不在允许的范围内

Java JDK版本不在允许的范围内,java,maven,mule,Java,Maven,Mule,我正在使用MuleCE3.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

我正在使用MuleCE3.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>

[1.7,1.9)
所以所有这些都指向同一个Java版本。 这种情况发生在我的Mac和Windows上。 只有当我改为Java1.7时,这个项目才能工作,但我可以使用1.7,因为我的一个库使用Java1.8

有人知道会是什么吗


谢谢!

您可能想使用
[1.7,1.9)
作为版本范围。这意味着它接受
1.7
(包括)到
1.9
(排除)之间的版本。由于
1.8.0\u 60
大于
1.8
,因此它超出了以前的版本范围。顺便说一句,
[1.8)
将包括和排除
1.8
,因此这不应该起作用。

问题是Mule还不能与JDK 1.8兼容,我需要使用JDK 1.7


我应该已经阅读了需求。

当maven JDK版本和PROJECT JDK版本不匹配时,就会发生此错误

为了解决这个问题,请首先使用

"mvn --version"
然后使用
set JAVA\u HOME=“c:\JDK\u location\u here”
设置所需的JDK版本。如果重新运行
“mvn--version”
,您将在那里看到更新的JDK版本。现在尝试运行您的构建


长期:在环境变量中设置JAVA_HOME。

我按照你说的做了,但事情是一样的。奇怪的是错误是一样的(范围1.7,1.8),但我把Pow文件放在了1.7,1.9中。Maven使用了项目中的文件,对吗?你是否包括了括号和括号?信息是什么?是的,我编辑了这篇文章。奇怪的是,错误是相同的,不在允许的范围内[1.7,1.8]。看起来Mule没有使用Pom文件。请尝试
mvn帮助:effective Pom
以了解Maven如何解析Pom。这应该会告诉您消息的来源。您使用的Mule版本是什么?只有3.7及更高版本支持Java 8.3.7 CE,最后一个版本。