【问题标题】:Maven Help, mvn is not recognized as an internal/external commandMaven 帮助,mvn 未被识别为内部/外部命令
【发布时间】:2014-05-16 17:56:14
【问题描述】:

我的系统变量是:

> set PATH
> %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program
> Files\Java\jdk1.8.0_05\bin;M2_HOME=C:\Program Files\Apache Software
> Foundation\apache-maven-3.2.1;M2=C:\Program Files\Apache Software
> Foundation\apache-maven-3.2.1\bin;MAVEN_OPTS=-Xms256m -Xmx512m

我的系统变量是:

C:\Program Files\Java\jre8\bin;C:\Program Files\Apache Software Foundation\apache-maven-3.2.1

编辑:

有人能告诉我我的系统变量应该是什么样子吗? 谢谢

怎么了?当我运行 mvn --version 时,我得到 mvn 不是内部/外部命令。

【问题讨论】:

    标签: maven environment-variables


    【解决方案1】:

    你的配置有点奇怪,有一些错误。让我们做正确的事:

    首先转到您的系统变量 PATH 并将其更改为:

    %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.8.0_05\bin;C:\Program Files\Apache Software Foundation\apache-maven-3.2.1\bin
    

    创建一个名称为 M2_HOME 且值为 C:\Program Files\Apache Software Foundation\apache-maven-3.2.1 的新变量

    另一个名称为MAVEN_OPTS 的值为-Xms256m -Xmx512m

    这应该可以解决您的问题。

    更新

    要修复您在评论中所说的错误,只需创建另一个名称为 JAVA_HOME 且值为 C:\Program Files\Java\jdk1.8.0_05 的变量

    【讨论】:

    • 好吧,我做到了。这就是我得到的:错误:在您的环境中找不到 JAVA_HOME。请在您的环境中设置 JAVA_HOME 变量以匹配您的 Java 安装位置。
    • @user3643432 尝试更新我的答案。
    【解决方案2】:

    您的PATH 应包含mvn.bat 所在的目录。根据您的问题,目前该目录不包括在内。

    尝试像这样更新PATH:

    set PATH [all what is already here];C:\Program Files\Apache Software Foundation\apache-maven-3.2.1\bin
    

    另外,要从 Windows shell 运行 Maven,您需要 JAVA_HOME 环境变量。它应该指向您希望 Maven 使用的 JRE 所在的位置。您很可能会想要这样的东西,具体取决于您的 JRE 所在的确切路径:

    JAVA_HOME=C:\Program Files\Java\jdk1.8.0_05\jre8
    

    您可能需要重新登录甚至重新启动 Windows 才能看到效果。

    【讨论】:

    • 没错。有时观看视频很有帮助
    • 错误:JAVA_HOME 设置为无效目录。 JAVA_HOME = "JAVA_HOME=C:\Program Files\Java\jdk1.8.0_05\jre8\bin" 请在您的环境中设置 JAVA_HOME 变量以匹配您的 Java 安装位置。
    • @user3643432 您需要从变量值的开头删除“JAVA_HOME=”,并使用正确的路径,我对您的java位置的猜测可能是错误的。
    • @user3643432 差不多。 JAVA_HOME 最后不应该有 /bin 。是的,您只需要编辑系统变量。我会用你需要的值更新我的答案。
    • 我很困惑,因为我听取了其他人的建议,而我的变量现在一团糟。你能告诉我我的整个系统和用户变量应该有什么吗?
    猜你喜欢
    • 2013-10-06
    • 2012-11-21
    • 2014-08-01
    • 2019-01-05
    • 1970-01-01
    • 2015-03-06
    • 2014-04-29
    • 2014-11-11
    • 2016-05-31
    相关资源
    最近更新 更多