JAVA_HOME应该指向JDK而不是JRE

JAVA_HOME应该指向JDK而不是JRE,java,windows,maven,intellij-idea,Java,Windows,Maven,Intellij Idea,我试图为我的项目设置maven,但我遇到了这个错误 “JAVA_HOME应该指向JDK而不是JRE” 我知道已经有类似的问题,但它不起作用。如何在windows中将JAVA_指向JDK。我正在使用IntelliJ IDEA控制面板->系统和安全->系统->高级系统设置->高级->环境变量->新系统变量 我在Mac OSX上也经历了同样的过程。我安装了最新的JDK,然后安装了Maven。有人建议我设置JAVA_HOME变量,以便将其指向JDK安装文件夹。运行Mavenmvncileexec:jav

我试图为我的项目设置maven,但我遇到了这个错误

“JAVA_HOME应该指向JDK而不是JRE”


我知道已经有类似的问题,但它不起作用。如何在windows中将JAVA_指向JDK。我正在使用IntelliJ IDEA

控制面板->系统和安全->系统->高级系统设置->高级->环境变量->新系统变量


我在Mac OSX上也经历了同样的过程。我安装了最新的JDK,然后安装了Maven。有人建议我设置JAVA_HOME变量,以便将其指向JDK安装文件夹。运行Maven
mvncileexec:java
时,我收到了相同的错误
NB:java\u HOME应该指向JDK而不是JRE

我所做的只是取消设置JAVA_HOME变量,它就工作了

通过cmd-

回显%JAVA\u HOME% set set JAVA_HOME=C:\Program Files\JAVA\jdk1.8.0 回显%JAVA\u HOME%

如果你有 JAVA_HOME环境变量定义不正确 运行此程序需要此环境变量 注意:JAVA_HOME应该指向JDK而不是JRE 错误 所以做一件事…打字 C:>dir/x 您将看到节目1或5月2日 在int环境变量之后,像这样改变JAVA_HOME Dir JAVA\u HOME:-C:\PROGRA~1\JAVA\jdk1.8.0\u 144\ 也在路径中设置:-%JAVA\u HOME%\bin;
它在IntelliJ IDEA中工作

转到
文件>项目结构>SDK>JDK主路径
。 复制它,然后转到
My Computer>Advanced Settings>Environment Variables
将JAVA_主路径更改为已复制的路径。 然后打开newcmd,然后尝试
mvn-v

它为我工作

我遇到了同样的问题。(窗口10环境) 我通过删除用户变量中的JAVA_HOME=“C:\Program Files\JAVA\jdk1.8.0_161\bin”来解决这个问题,而不是直接添加到系统变量中

然后我测试编辑JAVA_HOME=“C:\Program Files\JAVA\jdk1.8.0_161\”是否也有效。 当我在命令提示符窗口中运行“mvn-version”时,它显示“javahome:C:\ProgramFiles\Java\jdk1.8.0\u 161\jre”


总之,我想JAVA_HOME不应该包含bin目录。

在用户变量中添加
JAVA_HOME=C:\Program Files\JAVA\jdk(version)
,它对我有效。对我来说,它不适用于bin,即使我在系统变量中创建了
JAVA\u HOME
,也只需删除
JAVA\u HOME
变量值末尾的分号即可

将JAVA\u HOME设置为C:\Program Files\JAVA\jdk1.8.0\u 171

它对我起了作用。

我花了3个小时来解决这个错误
JAVA\u HOME
环境变量定义不正确。运行此程序需要此环境变量NB:
JAVA\u HOME
应指向JDK而不是JRE

我终于找到了解决办法。请通过
Browse Directory
按钮/选项设置
JAVA\u HOME
值。尝试查找jdk路径。例:
C:\ProgramFiles\Java\jdk1.8.0\u 181

它将删除分号问题:D

如果您已经删除了JRE路径,请确保您没有该路径

  • 在系统变量中添加
    JAVA\u HOME
    。变量值:
    C:\Program Files\Java\jdk-10.0.2
    (不带bin的jdk位置)
  • 在系统变量中添加
    M2
    。变量值:
    C:\dev\maven\apache-maven-3.5.4\bin
    (带bin的maven位置)
  • 在系统变量中添加
    M2\u HOME
    。变量值:
    C:\dev\maven\apache-maven-3.5.4
    (不带bin的maven位置)
  • 在Path系统变量中添加
    %JAVA\u HOME%
    %M2%
    C:\Program Files\JAVA\jdk-10.0.2
    C:\dev\maven\apache-maven-3.5.4\bin
    -->对于windows 10,只需添加位置即可。对于其他版本,在变量值字段的末尾添加分号,然后添加位置Ex:
    ;%JAVA_主页%;%M2%

  • 我没有检查bin的添加或删除是否会改变结果,但这对我来说仍然有效。

    假设Java JDK安装在C:\Windows\System32中,将此目录添加到Path环境变量中,除了如何添加
    Java\u HOME
    变量之外,它还应该起作用,如果它在之前工作并已停止工作,请确保该路径仍然存在。我最近更新了Java,删除了旧版本,使我的
    Java\u HOME
    环境变量无效。

    我有这个问题,但对于Mac Os,我在.bash\u配置文件中将Java\u HOME变量设置为
    export Java\u HOME=$(/usr/libexec/Java\u HOME)
    ,然后保存。然后运行
    source~/.bash_profile
    最后
    mvn-version
    并修复了问题。希望有助于在系统变量下添加以下内容

    JAVA_HOME = C:\Program Files\Java\jdk1.8.0_201
    
    JDK_HOME = %JAVA_HOME%\bin
    
    M2_HOME = C:\apache-maven-3.6.0
    
    MAVEN_BIN = %M2_HOME%\bin
    
    MAVEN_HOME = %M2_HOME%
    
    在路径下添加这些

    %M2_HOME%
    
    %JDK_HOME%
    

    我在用户变量中添加了JAVA_HOME path,并省略了“/bin”。 我尝试了这里给出的每一种方法,但只有这种方法对我有效。

    对于Windows 10,Java 8_144


    如果路径包含空格,请使用缩短的路径名。例如,C:\Progra~1\Java\jdk1.8.0_65

    Windows 10 Home For me:

    我正在通过我的课程学习maven。第一次环境变量还可以。我在JAVA_HOME上对系统变量进行了如下操作:

    D:\Install\Java\jdk-12.0.1;D:\Install\apache-maven-3.5.4-bin\apache-maven-3.5.4
    

    几天后,不知道发生了什么,我开始收到:

    C:\Users\Franco>mvn -version
    
    The JAVA_HOME environment variable is not defined correctly
    
    This environment variable is needed to run this program
    
    NB: JAVA_HOME should point to a JDK not a JRE
    

    在尝试了以上所有操作之后,我尝试删除系统变量上的jdk条目,并将其放在用户变量上,因此现在我有:

    JAVA_HOME on USER VARIABLES: D:\Install\Java\jdk-12.0.1
    
    JAVA_HOME on SYSTEM VARIABLES: D:\Install\apache-maven-3.5.4-bin\apache-maven-3.5.4
    
    现在我有:

    C:\Users\Franco>mvn -version
    
    Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-17T20:33:14+02:00)
    
    Maven home: D:\Install\apache-maven-3.5.4-bin\apache-maven-3.5.4\bin\..
    
    Java version: 12.0.1, vendor: Oracle Corporation, runtime: D:\Install\Java\jdk-12.0.1
    
    Default locale: en_US, platform encoding: Cp1252
    
    OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
    

    首先,确保Maven bin位于环境变量路径条目中

    如果是,请确保您的条目没有顺序混乱,并且JAVA_HOME在列表中的路径之前,或者任何引用%JAVA_HOME%的条目之前。当我试图检查maven版本时,我也遇到了同样的错误

    我有几个额外的路径变量引用了%JAVA_HOME%,或者是一个不同版本的JDK和Maven混合在一起。我移动了Maven路径入口
    $ vim .bash_profile
    
    export JAVA_HOME=$(/usr/libexec/java_home)
    
    $ source .bash_profile