我已经按照Windows XP的官方安装说明进行操作了。但有时当我执行mvn --version
时,我会收到错误消息,
"mvn"未被识别为内部或外部命令
我什至重新启动了几次机器,但操作系统并不总是识别 maven 命令。但是当我执行、cd %M2_HOME%
或cd %M2%
执行时,它会将我带到安装目录。我还确保将用户变量M2
添加到Path
系统变量中。
那么,什么给了呢?
方法是将M2
从用户变量移动到系统变量
看起来 maven 不存在于您的 PATH 中。将绝对 maven 主页\bin 位置添加到您的路径中。
我遇到了同样的问题,重新启动命令提示符,然后检查尝试 mvn --version。 它可能一直设置并工作,但命令提示符需要重新启动才能访问新的系统变量。
-
下载
apache-maven-3.3.9-bin.zip
文件并将其解压缩。 -
然后设置系统变量
M2_HOME = B:sql softwareapache-maven-3.3.9
或根据需要 -
同时设置变量
M2 = %M2_HOME%bin
-
打开
CMD
并写入mvn
我解决了谢谢
只是添加一些为我解决问题的信息:
- 确保 %M2% 和 %M2_HOME% 变量没有分号 (;)在最后。仅当该路径中有多个位置时才应使用此方法,但事实并非如此;
- 此外,请确保在"Path"变量中,各种路径之间没有任何空格,用分号分隔。
感谢Pawan Valecha和Abhijeet Sawant的提示。
做错了什么:
1) 确保它不在 [C:\程序文件(x86)] 中,它应该在 [C:\程序文件] 如果这可能会破坏它,我不是 100%,但你永远不知道。
2)我需要在我的环境变量中做3件事才能让它工作
- 像这样创建一个用户变量 [ M2 = %M2_HOME% ]
- 像这样创建一个用户变量 [M2_HOME = C:\Program Files\Apache Software Foundation\apache-maven-3.2.2]
- 将路径编辑为 [此处已有的内容 +];%M2%
同样的问题。
我通过以下方式解决了它:
- 将 C:\Program Files\apache-maven-3.3.9\bin; 添加到 PATH
- 以管理员身份运行 CMD
然后mvn --version
工作。
Maven 应按以下方式配置(可以是用户变量或系统): - M2: %M2_HOME%\bin - M2_HOME:(您的目录指向 Maven 的根目录,而不是 \bin) - 路径: %路径%;%M2%
然后,您应该能够从命令提示符运行mvn
。
我遇到了这个问题,发现由于某种原因,环境变量根本没有被解析(执行cd %M2%
告诉我当前目录中没有文件夹%M2%
)。最后,将显式路径添加到Maven的可执行文件对我有用:
C:apache-maven-3.1.0bin
设置 M2 和 M2_HOME。我遇到了同样的问题,问题是我在分号之后的 PATH 变量中放了一个额外的空格。刚刚从路径中删除了空间,它起作用了。(视窗 7 机器)
安装步骤
- 下载二进制压缩存档或 tar.gz。
- 复制到相应的文件夹中。示例 - C:\apache-maven-3.3.9
- 添加变量(用户或系统) M2_HOME = C:\apache-maven-3.3.9
- 添加变量(用户或系统) MAVEN_HOME = C:\apache-maven-3.3.9
- 使用 C:\apache-maven-3.3.9\bin 更新变量路径
- 打开CMD并键入mvn -v或mvn --version,它应该给出以下响应
C:\Users\XXXXXXX>mvn --versionApache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T22:11:47+05:30)Maven home: C:\apache-maven-3.3.9Java版本:1.8.0_40,供应商:甲骨文公司Java home: C:\Program Files\Java\jdk1.8.0_40\jre默认区域设置:en_US,平台编码:Cp1252操作系统名称:"Windows 8",版本:"6.2",架构:"amd64",系列:"dos"
**确保所有变量都具有正确的值,在 CMD 上使用回显 %M2_HOME%
我通过创建所有用户变量(包括PATH
变量)来解决这个问题。这是因为系统变量不会"转换"用户变量。因此,如果您只想在帐户中使用 maven,则需要添加另一个PATH
变量作为用户变量,而不是系统变量。
正如其他人所做的那样,创建新的系统变量 M2 和 M2_HOME解决了这个问题。 只是在我的Windows XP机器上使用户变量M2和M2_HOME导致maven无法从命令行识别。 然后我删除了用户变量,创建了副本作为系统变量,这一切都变得栩栩如生。
这是带有XP sp3的apache-maven-3.0.4。因此,http://maven.apache.org/download.cgi 中的说明似乎不正确。
管理员身份运行命令提示符为我解决了问题。我不必在系统变量下移动 M2 或 M2_HOME。
很可能您没有正确安装 maven。使用它来下载Maven。下载最新的(Binary tar.gz)
文件。它对我有用。
我遇到了同样的问题,我的语法没有问题,但是当我将M2
、M2_HOME
、JAVA_HOME
环境变量从用户移动到系统时,它开始工作。路径变量保持不变。
将 Maven bin 路径添加到系统变量中,如下所示
转到
> Enviornment Variables > set Path=D:apache-maven-3.2.1bin
或者,如果已设置路径,则在路径后附加";"
重新启动命令并尝试
运行专家赢得 7
- 解压缩 apache-maven 到目录 C:\Program Files\apache-maven-3.2.1
- 转到 [环境变量] 设置 [路径] C:\程序文件\apache-maven-3.2.1\bin;
- 打开cmd并键入C:\Program Files\apache-maven-3.2.1> MVN -version
我在Windows 7上遇到了类似的问题。起初我设置 M2,M2_HOME在用户变量下,但是当我回显 %PATH% 时,我没有看到 maven bin 目录列在 PATH 下。然后我在系统变量下设置 M2,M2_HOME它起作用了。
从用户变量中删除 M2 和M2_HOME并移动到系统变量。这将解决问题<</p>
有同样的问题,
MVN --版本
工作但
马文 --版本
冇。无论如何,我更喜欢使用"mvn"而不是"maven",所以一切都很好。我也注销/登录以确保。
确保尚未重命名位于M2
环境变量路径中的某个文件夹。如果您有,请相应地更改您的M2
和/或M2_HOME
。
M2
还是M2_HOME
是系统变量还是用户变量,只要您使用环境变量所在的同一用户登录即可。
我已经通过在用户变量中添加 Path 变量作为%JAVA_HOME%bin;%M2_HOME%bin;
解决了它
接受的答案无济于事,但下面的简单步骤修复了它!
在系统路径下:不要使用 M2%,而是使用 %M2_HOME%\bin,就这么简单。
注意,我的 %M2_HOME% 指向 %MV3_HOME% 而不是实际的绝对路径,因为我安装了多个版本的 maven 并试图变得聪明(在同一个盒子上的 maven 版本之间切换不同的项目)。
一个临时的解决方法是从终端本身设置路径。之后为我工作。以管理员身份运行也可以。在我的情况下,M2 和 M2_HOME 都已经设置为系统变量。
我在执行命令 mvn -version 时遇到了同样的问题; 但是,我检查了我还在环境变量设置中设置了 mvn 选项,这在命令提示符上给了我一些堆内存问题。因此,我删除了我设置的maven选项,然后它对我来说效果很好。
我遇到了同样的问题,然后我关闭并重新打开了cmd.exe以使mvn -vto传播到我的命令提示符。
如果在设置变量时 cmd 处于打开状态,则它们在该会话中将不可用。
假设您已经为 maven 创建了变量路径,如下所示:
在"系统路径"下,单击"new
",然后按如下所示进行编辑:
变量名:MAVEN_HOME
变量值:C:Program Filesapache-maven-3.5.3bin
然后继续执行以下说明:
在系统路径下,通过单击编辑并添加来更新变量路径:
C:Program Filesapache-maven-3.5.3bin;
紧接着:
C:Program FilesJavajdk1.8.0_161bin;
请记住在bin
后添加分号;
,如上所示,然后运行cmd提示符并键入:
mvn -v