Eclipse错误设置Maven项目进行类练习:检查$ M2_HOME环境变量和mvn脚本匹配

时间:2015-03-26 17:32:50

标签: java eclipse maven

我发现了一些与此相关的问题,但它们都与Intellij或Mac OS有关。我在Windows 8.1上使用Eclipse:

面向Web开发人员的Eclipse Java EE IDE。版本:Luna Service Release 2(4.4.2) 构建ID:20150219-0600

Maven 3.3.1

我已经设置了" Run As"参数as directed for the course但是当我尝试运行时收到以下错误消息:

  

-Dmaven.multiModuleProjectDirectory系统属性未设置。检查$ M2_HOME环境变量和mvn脚本匹配。

我对mvn -version的输出如下,似乎是正确的。

  

Apache Maven 3.3.1(cab6659f9874fa96462afef40fcf6bc033d58c1c;   2015-03-13T16:10:27-04:00)

     

Maven home:C:\ Program Files \ Apache Software   Foundation \ apache-maven-3.3.1 Java版本:1.7.0_75,供应商:Oracle   公司

     

Java home:C:\ Program Files \ Java \ jdk1.7.0_75 \ jre

     

默认语言环境:en_CA,平台编码:Cp1252

     

操作系统名称:" Windows 8.1",版本:" 6.3",arch:" amd64",系列:   "窗户"

对于Maven和Eclipse,我是一个完整的新手。任何帮助表示赞赏。

6 个答案:

答案 0 :(得分:15)

我设法为此制定了解决方案。

1)我不得不运行配置并向VM添加参数。 (运行 - 运行配置 - JRE选项卡 - VM参数)。在文本框中输入以下内容

 -Dmaven.multiModuleProjectDirectory=%M2_HOME%

你需要使用%M2_HOME%或类似的东西来表示Maven的路径,因为当我直接添加我的路径时,它无法找到它。我认为这是因为论证有一个长度限制。我的道路是

C:\Program Files\Apache Software Foundation\apache-maven-3.3.1

我收到一条错误,指出它无法在Program Files \ Apache

中找到运行时

2)使用C:\ Program Files \ Apache Software Foundation \ apache-maven-3.3.1

设置一个名为M2_HOME的系统环境变量

控制面板 - 系统和安全 - 系统 - 高级系统设置 - 环境变量 - 系统变量 - 新

答案 1 :(得分:2)

你遇到这个并不孤单。我最近也转到了3.3.1,遇到了同样的问题。

这不是最佳答案,但今天可能会对您有所帮助。尝试回到最新的3.2.x. (目前3.2.5)

我感觉它与MNG-5767以及最近进行的更改有关。在m2e更新中可能有一些功能,或者它可能与您的maven项目的结构有关。如果没有更多细节,那将很难说清楚。

答案 2 :(得分:0)

https://www.eclipse.org/m2e更新m2eclipse安装将解决此问题。

答案 3 :(得分:0)

在下面添加VM参数对我有用 -Dmaven.multiModuleProjectDirectory = M2_HOME

答案 4 :(得分:0)

较新版本的maven会自动在bin/mvn脚本中设置multiModuleProjectDirectory属性。这已添加here,但我不确定发布号/修补是如何工作的。您可以在该文件中查找find_maven_basedir函数。如果它不存在,请尝试升级maven。

答案 5 :(得分:0)

在eclipse中访问以下位置

Window
  Preference
    Java
      Installed JREs

现在编辑Default VM arguments并根据您的操作系统类型放在参数下面。

如果是Windows,

-Dmaven.multiModuleProjectDirectory=M2_HOME

如果是Linux,

-Dmaven.multiModuleProjectDirectory=$M2_HOME