17

之前可能有人问过问题,但我发现了一种非常奇怪的错误。当我mvn --version从 bin 运行命令时,它会给出版本和其他信息。但是,当我在 bin 外运行时,它会给出异常。两个结果都在下面提到

C:\Program Files\apache-maven-3.0.5-bin\apache-maven-3.0.5\bin>mvn --version
Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 19:21:
28+0530)
Maven home: C:\Program Files\apache-maven-3.0.5-bin\apache-maven-3.0.5
Java version: 1.7.0_25, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.7.0_25\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"

C:\Program Files\apache-maven-3.0.5-bin\apache-maven-3.0.5>mvn --version
'mvn' is not recognized as an internal or external command,
operable program or batch file.

我还在用户变量中设置了 JAVA_HOME,在系统环境变量中设置了 M2_HOME、M2。这些变量的输出%path%是:

C:\Users\SAHILBHALLA>echo %JAVA_HOME%
C:\Program Files\Java\jdk1.7.0_25

C:\Users\SAHILBHALLA>echo %M2%
C:\Program Files\apache-maven-3.0.5-bin\apache-maven-3.0.5\bin

C:\Users\SAHILBHALLA>echo %M2_HOME%
C:\Program Files\apache-maven-3.0.5-bin\apache-maven-3.0.5

C:\Users\SAHILBHALLA>echo %path% 
C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPow erShell\v1.0\;C:\Program Files\Java\jdk1.7.0_25\bin;.; 

告诉我哪里错了。我应该怎么做才能从中恢复?

4

17 回答 17

21

我的问题解决了,path没有解决%M2%。当我在路径中添加 maven-bin 的位置时,而不是%M2%在该命令起作用之后。

我要感谢所有试图解决问题的人

于 2013-07-03T15:06:09.407 回答
14

出现此问题是因为在您的操作系统中没有与已安装的 maven 相对应的任何环境变量。为了解决这个问题,我总是使用 Intellij 的捆绑 Maven 并且不再安装单独版本的 Maven,为了找到捆绑的 Maven 的路径去 intellij 并点击Ctrl+Alt+S-> Build, Execution, Deployment-> Build tool-> Maven->Maven home directory你可以在那里找到 intellij 的捆绑 maven 路径,如下所示图像演示。

在此处输入图像描述

然后去System environment variables设置这些变量:

变量名:MAVEN_HOME

变量值:C:/Program Files/JetBrains/IntelliJ IDEA 2019.3.1/plugins/maven/lib/maven3

在此处输入图像描述

定义系统变量后MAVEN_HOME找到变量path并将这一行添加到列表中

%MAVEN_HOME%\bin

在此处输入图像描述

工作完成,打开命令提示符并通过编写mvn -v. 99% 的时间它都可以工作,如果你在 1% 的范围内,则必须重新启动计算机。

如果要使用mvnintellij 内部终端的命令,则必须在设置环境变量后重新启动 intellij,那么从终端运行 maven 命令应该没有任何问题。

于 2020-01-20T18:28:15.007 回答
12

PATH如果你想从任何地方执行它,maven 应该在系统上。添加%M2_HOME%\binPATH

于 2013-07-02T18:12:23.173 回答
9

首先确保您的 java 正在工作或不在 cmd 中运行此命令

 C:\>java -version

如果它正在工作,它将显示此输出:-

C:\>java -version
java version "1.8.0_74"
Java(TM) SE Runtime Environment (build 1.8.0_74-b02)
Java HotSpot(TM) Client VM (build 25.74-b02, mixed mode)

步骤 1.首先在用户变量中设置您的 java_home[C:\Program Files\Java\jdk1.8.0_74] 路径。

步骤 2.然后在系统变量中设置 MAVEN_HOME[C:\Program Files\maven\apache-maven-3.3.9] 路径,并确保您的 maven 文件夹应仅存在于 C 文件夹中。

步骤 3.然后在系统变量中设置 M2 路径并在此处提供 maven bin 位置,即[C:\Program Files\maven\apache-maven-3.3.9\bin]。

步骤 4.然后设置新的系统变量,即变量名= MAVEN_OPTS in 和变量值=-Xms256m -Xmx512m

步骤 5.然后编辑路径/系统路径变量小心不要从那里删除任何东西只需添加 java_home path ie=;C:\Program Files\Java\jdk1.8.0_74 和 M2 variable=;%M2% 最后.

步骤 6.确保 maven 现在正在工作或不在 cmd 中运行此命令

> C:\>mvn --version

如果它正在工作,它将显示此结果:-

Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-
7+05:30)
Maven home: C:\Program Files\maven\apache-maven-3.3.9\bin\..
Java version: 1.8.0_74, vendor: Oracle Corporation
Java home: C:\Program Files\Java\jdk1.8.0_74\jre
Default locale: en_IN, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "x86", family: "dos"
于 2016-04-28T05:57:22.480 回答
8

在 Windows 10 中,我必须以管理员身份运行 Windows 命令提示符 (cmd)。这样做为我解决了这个问题。

于 2017-01-29T16:57:28.550 回答
5

在Windows 7中,我在系统级别添加环境变量后解决了。如果您没有足够的权限,请尝试在系统变量而不是用户变量中设置%JAVA_HOME%和。%M2_HOME%

于 2013-09-17T09:23:55.637 回答
4

将完整路径mvn放在您的PATH环境变量中。

于 2013-07-02T18:12:22.200 回答
3

使用 Maven bin 位置设置路径后,关闭提示窗口并重新启动它。使用该echo %path%命令确保使用 Maven 变量设置路径,然后运行该命令mvn -version。不知何故,如果在提示窗口运行时设置了路径,它不会选择新变量。

于 2014-03-03T13:29:29.713 回答
3

要解决此问题,请按照以下步骤操作:

  1. 从http://maven.apache.org/download.cgi下载 maven zip 文件
  2. 提取 maven zip 文件
  3. 打开环境变量并在用户变量部分单击新建按钮并创建一个名为MAVEN_HOME的变量并将其分配给提取的 maven zip 的 bin 路径的值
  4. 现在在系统变量中单击路径并单击编辑按钮-> 现在单击新建按钮并粘贴maven zip的bin路径
  5. 现在点击确定按钮
  6. 打开CMD并输入mvn -version
  7. 将显示已安装的 Maven 版本,您的设置已完成
于 2020-02-20T05:38:49.870 回答
2

以下帮助我在Win10中。

  • 添加%M3_HOME%\bin;为用户变量下的路径变量的值。
  • 将完整路径添加到 maven 二进制文件夹作为M3_HOME系统变量下变量的变量值。
  • 在系统变量下添加%M3_HOME%\bin;为路径变量的值。
  • 在适用的地方单击确定。
  • 关闭现有的命令提示符。
  • 打开新的命令提示符并导航到 Maven 二进制文件夹。
  • 类型mvn -version

它会起作用的。

于 2019-02-12T13:29:27.693 回答
1

是适用于 Windows、Unix 和 Mac 操作系统的最佳 Maven 环境设置教程。

但是最后你必须将PATH变量的值设置为";%M2_HOME%\bin"而不是"%M2%",因为PATH变量不能使用“%M2%”来减少值

于 2015-05-28T15:16:58.160 回答
1

通过首先在用户变量下创建新的“路径”变量来解决它(请注意,在新的 Windows 安装路径变量不是创建为用户变量,仅作为系统)之后,我附加了 %M2%(指向 maven dir/bin)到(新创建的)用户路径变量。之后重新启动 cmd 窗口,它就像一个魅力。

于 2015-08-25T11:18:36.403 回答
1

转到 shell(Windows 的 cmd)并从那里手动设置路径变量。它经常从那里工作。在http://www.howtogeek.com/118594/how-to-edit-your-system-path-for-easy-command-line-access/阅读更多信息

于 2016-02-17T14:05:56.073 回答
1

转到环境变量并粘贴以下内容:

在系统变量下: 第 1 步: 新建 --> 新建用户变量 1. 变量名称:MAVEN_HOME 2. 变量值:D:\apache-maven-3.5.2

第 2 步: 1. 转到路径 --> 并粘贴 - %MAVEN_HOME%\bin

于 2018-03-22T04:12:53.457 回答
0

我更喜欢将路径添加到 ~/.bashrc。

vim ~/.bashrc,然后添加这些行:

export M2_HOME=/usr/local/apache-maven-your_maven_path&version
export M2=$M2_HOME/bin
于 2013-07-02T18:17:28.150 回答
0

我在 Windows 10 中完成了所有这些操作,但仍然遇到问题。最后,事实证明 Maven 主文件夹的路径与许多这些答案中的预期并不完全相同,因为它原来是 /apache-maven-3.6.3-bin/apache-maven-3.6.3。一旦我为系统变量和 PATH 变量纠正了这个问题,它就起作用了。简而言之,如果您按照指示设置了环境变量,但它仍然无法工作,我会仔细检查以确保变量确实指向 Maven 主文件夹和机器上的 bin 文件夹的确切路径。

于 2020-02-19T03:42:20.420 回答
0

试试这些步骤...

cmd : mvn -版本

去 apache-maven 文件夹 > bin

复制路径并转到系统属性>环境变量>系统变量

路径 > 编辑 > [粘贴文件路径]

下次重启你的机器。

https://youtu.be/RQ_Z859Hd7Q

于 2021-05-15T09:57:21.347 回答