【问题标题】:mvn command is not recognized as an internal or external commandmvn 命令未被识别为内部或外部命令
【发布时间】:2013-10-06 02:55:41
【问题描述】:

mvn 命令无法识别为内部或外部命令。

我已经设置了 M2_HOME、JAVA_HOME 并将 %M2_HOME%/bin 添加到路径变量中。都是系统变量。仍然遇到同样的问题。

呼应变量向我显示正确的路径。

Maven 路径:C:\apache-maven-3.1.0\apache-maven-3.1.0

M2_HOME:C:\apache-maven-3.1.0\apache-maven-3.1.0

路径:Other things,C:\Program Files (x86)\Java\jdk1.7.0_40\bin,C:\apache-maven-3.1.0\apache-maven-3.1.0\bin

我已经重启了我的电脑两次。

【问题讨论】:

  • 看来maven安装没有正确完成..
  • 我下载了适用于 windows 7 32 位的 apache-maven-3.1.0-bin.zip 并解压到我的位置。然后我设置了我的变量。我还需要什么吗。如果我导航到 maven bin 文件夹然后按 mvn 那么它工作正常
  • 按照this教程安装maven。
  • 确保你下载的是maven 二进制文件而不是源代码

标签: maven


【解决方案1】:

试试%M2_HOME%\bin\ 而不是/

【讨论】:

  • 另外有时你需要重启 Windows。
【解决方案2】:

在设置好 M2_HOME(指向您的 Maven basedir,NOT bin 目录)和 PATH (PATH=%M2_HOME%\bin;%PATH%) 后重新启动您的机器。

然后做:

dir %M2_HOME%\bin\mvn*

如果有一个.bat 文件,它应该可以在 Windows 下工作,因为它似乎可以找到它。如果没有,那么您的路径不正确,您需要确保您的 %PATH% 变量确实指向 Maven 的正确路径。

确保为您的操作系统使用正确的斜杠。在 Windows 下,它们是 \

【讨论】:

  • 感谢 Carl ...我可以找到我的 bat 文件..mvn 仍然没有重新设计..我还能做什么?
  • 向我们展示您的 Maven 路径、您的 M2_HOMEPATH 变量,并告诉我们您是否已重新启动计算机。
  • Maven 路径:C:\apache-maven-3.1.0\apache-maven-3.1.0 M2_HOME:C:\apache-maven-3.1.0\apache-maven-3.1.0路径:%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;c:\Program Files (x86)\Microsoft Application Virtualization Client;c:\Program Files (x86)\Open Text\View\bin; %systemroot%\System32\WindowsPowerShell\v1.0\;C:\Program Files\ThinkPad\Bluetooth Software\;C:\Program Files\ThinkPad\Bluetooth Software\syswow64;C:\Program Files\Perforce,C:\Program Files (x86)\Java\jdk1.7.0_40\bin,C:\apache-maven-3.1.0\apache-maven-3.1.0\bin 我已经重启了我的电脑两次
  • 你有“,”而不是“;”。这导致了你的问题。此外,M2_HOME 应该放在前面,而不是附加在后面,这意味着它应该放在开头,而不是放在 PATH 的末尾。
  • 非常感谢 carlspring...不知道 ',' 是怎么来的...';'解决了问题
【解决方案3】:

您是否尝试在系统变量中引用用户变量?尝试echo %path%,M2 应该已经完全展开以显示 Maven 目录的文件路径。如果没有,那就是问题所在。

要修复它,您应该创建一个名为 PATH 的用户变量并将您的 %M2% 引用添加到其中。

【讨论】:

  • %path% 中的括号是什么意思?
  • @CodyBugstein 表示它是一个变量。
【解决方案4】:
  1. 尝试使用 echo %path% ,如果此选项未将您的 M2_HOME 和其他变量值显示为目录路径,则创建一个新的环境变量,例如 PATH,并按如下方式分配:

    PATH=%JAVA_HOME%\bin;%M2_HOME%\bin
    
  2. 将此添加到变量path=.....;%PATH%

  3. 现在打开一个新的cmd,尝试echo %path%
    它将显示所有系统路径

现在你可以检查mvn -version 会解决问题,如果没有尝试重新启动系统

附:根据文档,您应该在 C:\Program Files\Apache Software Foundation 中扩展您的 zip 发行版。但理想情况下没关系

【讨论】:

    【解决方案5】:

    将整个 maven 路径写入 Environment PATH 变量。

    示例:

    C:\Program Files\apache-maven-3.2.3\bin;
    

    我的PATH 变量没有正确读取%M2%%M2_HOME%\bin,因此我将完整路径写入了PATH 变量。

    工作。

    【讨论】:

      【解决方案6】:

      在您的环境变量中:

      新系统变量:

      M2_HOMEYour mvn directroy "C:\......\bin"

      新用户变量:

      M2%M2_HOME%

      通过添加%M2%编辑CLASSPATH

      终于打开cmd写了

      path=%CLASSPATH%

      享受

      【讨论】:

        【解决方案7】:

        我有同样的错误,但我的问题是我有以下问题:

        M2_HOME = C:\Program Files (x86)\Apache Software Foundation\apache-maven-2.2.1;

        这意味着我的 PATH = %M2_HOME%\bin; (等)

        ...变成了 C:\Program Files (x86)\Apache Software Foundation\apache-maven-2.2.1;\bin

        即分号是不应该的。

        这是我发现的,因为 Michael Ferry 建议使用 'ECHO %PATH%' 来查看实际的 PATH 输出是什么。

        【讨论】:

          【解决方案8】:

          以“以管理员身份运行”打开命令提示符并尝试。

          【讨论】:

            【解决方案9】:

            你在上面写了三个路径。第一个路径(maven 的路径)应该指向 bin 目录。

            Maven 路径:C:\apache-maven-3.1.0\apache-maven-3.1.0\bin;

            下面是对的。上面的路径应该更正了。

            M2_HOME:C:\apache-maven-3.1.0\apache-maven-3.1.0;

            PATH: Other things,C:\Program Files (x86)\Java\jdk1.7.0_40\bin,C:\apache-maven-3.1.0\apache-maven-3.1.0\bin;

            【讨论】:

            • 提到的路径不正确,每个路径都应该用';'分隔正如上面提到的@carlspring
            【解决方案10】:

            这对我有用:

            1-从https://maven.apache.org/download.cgi下载apache-maven-3.3.9-bin.tar.gz文件

            2-复制c:\programfiles下的文件夹

            3 组变量如下: M2_HOME ----- C:\Program Files\apache-maven-3.3.9 M2 ----- C:\Program Files\apache-maven-3.3.9

            将路径变量添加到此:;C:\Program Files\apache-maven-3.3.9\bin

            然后以系统管理员身份运行 cmd

            成功了。

            【讨论】:

              【解决方案11】:

              我遇到了这个问题,这让我有时忙得不可开交。在完全正确设置所有必需的环境变量后,我遇到了问题(无法识别 mvn)。所以通过这里的一个响应,我切换到另一个版本的 maven 并解决了问题。

              不完全相信它为什么会这样工作,然后我解压缩了有问题的版本并更新了 env-vars 使其工作。

              问题是当我最初从 zip 中提取文件时,我稍微修改了目录结构。当您提取 zip 文件时,例如 apache-maven-Xxx-bin.zip,它会创建文件夹结构为 - "apache-maven-3.5.0-bin\apache-maven-3.5.0. ..”

              在我的第一次尝试中,我通过删除 apache-maven-3.5.0-bin 文件夹并将 apache-maven-3.5.0 结构一个文件夹向上来修改了这个结构。这是导致问题的原因。

              【讨论】:

                【解决方案12】:

                右击我的电脑>>属性>>高级系统设置>> 系统属性窗口将被显示 在高级>>环境变量下

                点击新建设置环境变量

                变量名:JAVA_HOME 变量值:C:\Program Files\Java\jdk1.8.0_121

                变量名称:M2 变量值:%M2_HOME%\bin

                变量名称:M2_HOME 变量值:C:\Program Files\Apache Software Foundation\apache-maven-3.5.0

                变量名:路径 变量值:%M2_HOME%\bin

                然后点击确定,确定,确定。 现在重新启动命令提示符并再次使用“mvn –version”检查以验证 mvn 是否正在运行,您也可以重新启动系统。

                它现在应该可以工作了。

                【讨论】:

                  【解决方案13】:

                  我遇到了同样的问题。但是在设置 Maven 路径后重新启动我的计算机解决了这个问题。

                  变量名称:M2_Home 变量值:C:\Apache\apache-maven-3.3.9

                  变量名称:路径 变量值:C:\ProgramData\Oracle\Java\javapath;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;%JAVA_HOME%\bin \;%M2_HOME%\bin\

                  【讨论】:

                    【解决方案14】:

                    我也遇到过类似的问题。帮助我解决类似问题的文章是 MKyong 的,在这里:****https://www.mkyong.com/maven/how-to-install-maven-in-windows/**** 在 maven 的路径中包含包含 'bin'、'boot'、'conf'、'lib' 等文件夹的文件非常重要。例如,就我而言,正确的路径是: C:\Program Files\Apache Software Foundation\maven\apache-maven-3.5.0-bin\apache-maven-3.5.0

                    【讨论】:

                      【解决方案15】:

                      我使用的是 Maven 3+ 版本。就我而言,一切都很好。但是在添加 M2_HOME 和 bin 目录时,我错过了最后的“\”。 以前它就像: %M2_HOME%\bin ,它抛出了 mvn not recognizable 错误。 在末尾添加“\”后,mvn 开始正常工作。我猜“\”充当指向下一个文件夹的指针。 "%M2_HOME%\bin\" 应该可以工作,如果你错过了。

                      【讨论】:

                        【解决方案16】:

                        尝试先通过命令提示符设置maven的路径。

                        setpath.bat 从批处理文件的基本窗口打开cmd

                        通过cmd设置路径后,可以使用其余的maven命令。

                        【讨论】:

                          【解决方案17】:

                          一个最重要但经常被忽视的方面是 %MAVEN_HOME%\bin 或 %M2_HOME%\bin 应该是 %PATH% 环境变量中的第一件事。

                          【讨论】:

                          • 单行解决方案应该在注释中。
                          【解决方案18】:

                          对我来说它不起作用,因为我在“用户变量”中编辑路径变量并将其添加到“系统变量”下使其工作。希望对您有所帮助。

                          【讨论】:

                            【解决方案19】:

                            在环境变量中添加路径并在命令提示符下以普通用户身份运行后,我也面临同样的问题。

                            然后我打开命令提示符并尝试以“以管理员身份运行”运行,我能够下载与该项目相关的所有包。

                            【讨论】:

                              【解决方案20】:

                              我有一个愚蠢的评论,但其他人会遇到这个问题。当我尝试输入 ./mvnw clean package 时,我遇到了同样的错误,我发现我必须将其更改为 .\mvnw clean package,从此我过着幸福的生活。

                              【讨论】:

                                【解决方案21】:

                                对于 Windows,您需要执行以下操作:

                                1. Windows 并输入 env

                                2. 打开编辑环境面板

                                3. 点击环境变量

                                4. 在系统变量部分,双击路径

                                5. 在对话框中,在路径下创建一个系统变量 如下 ->

                                  MVN_HOME: C:\Users\Documents\Project\Software\apache-maven-3.6.3\bin

                                6. 打开一个新的命令提示符并点击 mvn,你现在应该可以了。

                                【讨论】:

                                  【解决方案22】:

                                  Windows 10 -

                                  1. 添加新变量“M2_HOME”-

                                  1. 更新变量“路径”-

                                  2. 在 cmd 上验证 -

                                  【讨论】:

                                    【解决方案23】:

                                    如果您已经设置了 JAVA_HOMEM2_HOME(或在我的情况下为 MAVEN_HOME)环境变量并将 \bin 文件夹添加到 Path 环境变量中,但仍然不工作,那么这个解决方案可能适合你。

                                    确保您已按正确顺序设置变量,您的 %JAVA_HOME%\bin 文件夹应添加到 %MAVEN_HOME%\bin 之前,就像显示的图像一样

                                    【讨论】:

                                      【解决方案24】:

                                      我也遇到过这个问题。 但我面临的问题是由于 Maven 存储在系统上的位置名称。 该路径确实包含空格,因为该系统无法到达导致此问题的路径。 当我将 maven 移动到不包含任何空格的位置时,问题得到了解决。

                                      【讨论】:

                                        【解决方案25】:

                                        现有的答案太复杂了。我刚刚解决了同样的问题

                                        scoop install maven
                                        

                                        这需要你首先安装scoop Windows 的包管理器。

                                        不过,我建议您安装 scoop,这样一切都会变得简单。

                                        【讨论】:

                                          【解决方案26】:

                                          我尝试了所有方法,终于在下面的步骤中解决了这个问题。

                                          在下载的 zip 中有文件 README ,其中提到 窗户

                                          设置 PATH="c:\program files\apache-maven-3.x.y\bin";%PATH%

                                          创建新的 PATH 变量并分配第一个 maven 然后 %PATH%

                                          它对我有用。

                                          试一试

                                          【讨论】:

                                            猜你喜欢
                                            • 2012-11-21
                                            • 2014-08-01
                                            • 2019-01-05
                                            • 1970-01-01
                                            • 1970-01-01
                                            • 2014-04-29
                                            • 1970-01-01
                                            • 1970-01-01
                                            • 2013-10-11
                                            相关资源
                                            最近更新 更多