Maven M2_主目录设置为无效目录(Windows 7)

Maven M2_主目录设置为无效目录(Windows 7),maven,windows-7,installation,Maven,Windows 7,Installation,我曾尝试将Maven安装到Windows7,但效果不佳。一些基本信息: Maven安装目录:C:\Program Files\Apache软件基金会\Apache-Maven-3.0.4 系统变量“M2\u HOME”:C:\Program Files\Apache Software Foundation\Apache-maven-3.0.4\ 系统变量“Path”:%M2\u HOME%apache maven\src\bin;%JAVA_HOME%\bin 如果在命令路径中运行mvn--ve

我曾尝试将Maven安装到Windows7,但效果不佳。一些基本信息:

Maven安装目录:
C:\Program Files\Apache软件基金会\Apache-Maven-3.0.4
系统变量“
M2\u HOME
”:
C:\Program Files\Apache Software Foundation\Apache-maven-3.0.4\
系统变量“
Path
”:
%M2\u HOME%apache maven\src\bin;%JAVA_HOME%\bin

如果在命令路径中运行
mvn--version
,则会收到错误消息:

请在您的环境中设置
M2\u HOME
变量以匹配Maven安装的位置

因此,目前未根据说明设置
mvn
的子目录,即
%M2\u HOME%\bin
。如果我将
%M2\u HOME%apache maven\src\bin
替换为该文件,我会得到:

mvn不被识别为内部或外部命令、可操作程序或批处理文件

在Maven安装目录(或zip文件)中,
apache-Maven-3.0.4
中没有直接的
\bin
文件夹,我想知道是否应该有一个

我是Maven的新手,希望你们能帮忙


顺便说一下,Java命令在任何目录下都可以运行,因此我认为这不是问题所在,但我不能确定。

如果您下载的包apache-maven-3.3.9不包含bin文件夹,则您的下载是错误的。您必须在bin、boot、conf、lib文件夹中执行操作,否则会出现问题。下载的文件大小应约为4.8 mb。您可以通过md5或SHA1校验和检查文件。

M2_HOME
-set
C:\apache-maven-3.0.4
中,即不带
bin的路径

PATH
-设置
%M2\u HOME%\bin
即在PATH中使用
bin

您需要下载名为“Binary zip”的Maven文件。例如:

在3.3.1中,*.bat文件消失,只剩下*.cmd文件。CMD与.BAT相同,某些软件需要它们。我已将.CMDs重命名为.BATs,以使其在Netbeans下运行。它导致“Maven M2_主目录设置为无效目录”。将.BATs复制到.CMDs(即两者都在文件夹中)解决了该问题。

我的计算机上有相同的问题,我解决了该问题:

  • 我删除了Maven目录和Maven环境变量
  • 我在上下载了二进制压缩文件
  • 我在
    C:\maven
  • 我在
    M2\u HOME
    中添加了新的环境变量:
    C:\maven
    %M2\u HOME%\lib
    M2
    中添加了
    %M2%

而且它有效

在接下来的步骤之后,一切都会成功

  • 在第页,4个变体需要下载二进制文件

  • 设置环境变量(来自@JamesB-)的提示:

  • JAVA\u HOME=C:\Program Files\JAVA\jdk1.6.0\u 35

    MAVEN_HOME=D:\software\apache-MAVEN-3.0.4

    路径=%PATH%;%MAVEN_HOME%\bin;%JAVA\u HOME%\bin

  • 运行mvn-version

  • 刚才我也面临同样的问题。 在我的例子中,问题是
    路径
    未正确设置为包含
    %M2\u HOME%\bin
    。 一旦设置正确,问题就解决了


    当您遇到此类问题时,请在命令行上打印
    PATH
    的值,以确保它正确拾取值

    对我来说,PATH变量有旧版本的maven。所以我更新了它。我应该使用%M2\u HOME%,但我已经详细说明了路径。

    在搜索路径中显示的另一个目录中有一个旧版本的MVN。删除了旧版本,一切正常。使用windows文件搜索扫描驱动器中的所有“mvn”实例以查找旧版本。

    在我的情况下,安装是正确的:

    Windows系统变量:

    • M2 C:\dev\software\apache-maven-3.3.9\bin
    • M2\u HOME C:\dev\software\apache-maven-3.3.9
    Windows用户变量:

    • %M2\u HOME%\bin
    但是当有两个安装maven时,我遇到了同样的问题,尽管所有的参考都指向最新版本,在我的例子中是3.3.9。删除旧版本后,同一命令识别maven

    之前:

    maven -v
    ERROR: M2_HOME is set to an invalid directory.
    M2_HOME = "C:\dev\software\apache-maven-3.3.9"
    Please set the M2_HOME variable in your environment to match the
    location of the Maven installation
    
    之后:

    maven -v
    Apache Maven 3.3.9
    Maven home: C:\dev\software\apache-maven-3.3.9
    Java version: 1.7.0_51, vendor: Oracle Corporation
    Java home: C:\Program Files\Java\jdk1.7.0_51\jre
    

    将整个箱子位置添加到“PATH”环境变量 示例:C:\Program Files\Apache软件基金会\Apache-maven-3.0.4\bin

    不需要M2_家,M2。这对我很管用

    Microsoft Windows[版本10.0.14393] (c) 2016年微软公司。版权所有

    C:\Users\XXXX>mvn-版本ApacheMaven 3.3.9 (BB52D8502B132EC0A5A3F4C0953C07478323DC5;2015-11-10T22:11:47+05:30) Maven主页:C:\Program Files\Apache软件 Foundation\apache-maven-3.3.9\bin。。Java版本:1.8.0_91,供应商: Oracle公司Java主页:C:\Program Files\Java\jdk1.8.0\U 91\jre 默认区域设置:en_US,平台编码:Cp1252操作系统名称:“windows” 10”,版本:“10.0”,拱门:“amd64”,系列:“dos”


    检查不同maven位置的系统变量M2\u HOME和PATH。

    为您的帐户设置环境变量中的“M2\u HOME”和“PATH”,从系统环境变量中删除“PATH”。

    删除环境变量M2\u HOME。maven 3没有使用它,事实上,它混淆了它。如果您在路径中使用了它,那么可以明确地定义maven bin的路径,或者将其更改为其他路径,如M3_HOME。

    可能会在并行位置安装另一个版本的maven。
    在这种情况下,移除不需要的路径,并根据M2_HOME重置相应路径。

    快速回答
    基于与安装的不同Maven版本相关的M2_HOME使用问题,为了简化操作,M2_HOME的使用已被删除,不再受支持。windows用户的另一个重要变化是使用%HOME%ha