60

I am getting the mvn command not recognized as an internal or external command.

I have setup the M2_HOME, JAVA_HOME and added %M2_HOME%/bin to the path variable. All are system variables. Still getting the same problem.

Echoing the variables showing me the correct paths.

Path to 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

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

and I have restarted my computer twice.

4

26 回答 26

44

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

点击新建设置环境变量

变量名: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 是否正在运行,您也可以重新启动系统。

它现在应该可以工作了。

于 2017-07-20T03:06:50.343 回答
35

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

然后做:

dir %M2_HOME%\bin\mvn*

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

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

于 2013-09-30T10:30:01.593 回答
21

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

例子:

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

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

在职的。

于 2014-09-25T21:10:56.033 回答
13

这对我有用:

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

有效。

于 2016-03-02T12:27:25.910 回答
5

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

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

于 2018-10-01T07:10:10.087 回答
3

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

于 2015-04-02T06:59:35.453 回答
3

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

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

于 2013-10-12T13:17:36.013 回答
2

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

于 2013-09-30T09:38:58.303 回答
2

我遇到了这个问题,这让我在某个时候忙得不可开交。在完全正确设置所有必需的环境变量后,我遇到了问题(无法识别 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 结构一个文件夹向上来修改了这个结构。这是造成问题的原因。

于 2017-07-04T10:57:35.753 回答
2

视窗 10 -

  1. 添加新变量“M2_HOME” -

在此处输入图像描述

  1. 更新变量“路径” - 在此处输入图像描述

  2. 在 cmd 上验证 - 在此处输入图像描述

于 2020-12-06T19:41:49.270 回答
1
  1. 尝试使用echo %path%,如果此选项未将您M2_HOME和其他变量值显示为目录路径,则创建一个新的环境变量让我们说PATH,并分配如下:

    PATH=%JAVA_HOME%\bin;%M2_HOME%\bin
    
  2. 在变量中添加这个 path=.....;%PATH%

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

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

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

于 2014-08-22T08:06:34.503 回答
1

我有一个愚蠢的评论,但其他人会有这个问题。当我尝试安装时,我遇到了同样的错误,./mvnw clean package我发现我必须稍微改变一下,.\mvnw clean package然后我就过着幸福的生活。

于 2020-06-01T13:21:33.430 回答
1

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

于 2018-02-21T07:37:03.380 回答
1

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

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

一旦通过设置路径,就可以使用其余的 maven 命令cmd

于 2018-01-31T06:24:20.517 回答
0

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

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

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

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

即分号是它不应该在的地方。

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

于 2015-03-09T06:28:28.370 回答
0

在您的环境变量中:

新系统变量:

M2_HOME Your mvn directroy "C:\......\bin"

新用户变量:

M2 %M2_HOME%

CLASSPATH通过添加编辑%M2%

最后打开cmd并写入

path=%CLASSPATH%

请享用

于 2014-12-09T05:21:39.937 回答
0

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

  1. Windows 并键入 env

  2. 打开编辑环境面板

  3. 单击环境变量

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

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

    MVN_HOME: C:\Users<用户名>\Documents\Project\Software\apache-maven-3.6.3\bin

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

于 2020-09-14T21:55:04.800 回答
0

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

在下载的 zip 中有文件 README ,其中提到了对于 windows

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

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

它对我有用。

试一次

于 2021-12-29T16:43:50.040 回答
0

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

于 2018-05-02T06:38:36.653 回答
0

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

于 2021-04-01T17:49:40.970 回答
0

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

scoop install maven

这需要您首先安装scoop适用于 Windows 的包管理器。

但是,我建议您安装,scoop以便一切变得容易。

于 2021-09-04T02:17:31.543 回答
0

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

于 2017-12-19T07:13:41.933 回答
0

我遇到了类似的问题。帮助我解决类似问题的文章是 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

于 2017-09-10T15:30:53.303 回答
0

我有同样的问题。但是在设置 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\

于 2017-07-30T10:23:53.133 回答
-1

如果您已经设置了JAVA_HOMEand M2_HOME(或MAVEN_HOME在我的情况下)环境变量并将\bin文件夹添加到Path环境变量中但仍然无法正常工作,那么此解决方案可能适合您。

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

环境变量的正确顺序

环境变量的错误顺序

于 2021-03-22T16:03:02.240 回答
-3

你在上面写了三个路径。第一个路径(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;

于 2016-02-19T12:06:09.003 回答