Maven home(M2_HOME)没有被IntelliJ IDEA拾取

我想在OS X Lion上用IntelliJ IDEA 10.5.1做一个简单的maven构build,并且得到以下错误:

运行my-app [软件包]时出错:找不到有效的Maven安装。 要么在configuration对话框中设置主目录,要么在您的系统上设置M2_HOME环境variables。

我已经将M2_HOME设置为以下,但我仍然有问题。 是的,我确实重新启动了IntelliJ。

$ echo $M2_HOME /usr/share/maven 

然后,我手动inputpathMaven IntelliJ的项目Maven设置。 这不是我想要为每个项目所做的事情,那么是否有什么我想知道如何让IntelliJ知道我的主房屋是哪里?

Mac OS应用程序无法读取bash环境variables。 看看这个问题在OS X中设置环境variables? 将M2_HOME公开给包括IntelliJ在内的所有应用程序。 这样做后,你需要重新启动。

inputterminal:

 $ mvn --version 

然后得到如下结果:

 Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 16:51:28+0300) Maven home: /opt/local/share/java/maven3 Java version: 1.6.0_65, vendor: Apple Inc. Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home Default locale: ru_RU, platform encoding: MacCyrillic OS name: "mac os x", version: "10.9.4", arch: "x86_64", family: "mac" 

这里在第二行我们有:

 Maven home: /opt/local/share/java/maven3 

在configuration对话框中将此pathinput到字段中。 这一切都解决了!

另一个select是添加M2_HOMEvariables: IntelliJ IDEA=>Preferences=>IDE Settings=>Path Variables

IntelliJ重新启动后,应该将IntelliJ IDEA=>Preferences=>Project Settings=>Maven=>Maven home directory设置为您的M2_HOMEvariables。

得到这个答案? 可能上面的答案是很长的…

只需input:

 echo "setenv M2_HOME $M2_HOME" | sudo tee -a /etc/launchd.conf 

并重新启动你的Mac(多数民众赞成!)

重新开始很烦人? 只需使用命令:

 grep -E "^setenv" /etc/launchd.conf | xargs -t -L 1 launchctl 

并重新启动IntelliJ IDEA

如果M2_HOMEconfiguration为指向Maven主目录,则:

  1. 转到File -> Settings
  2. searchMaven
  3. selectRunner
  4. VM Options插入以下string:

     Dmaven.multiModuleProjectDirectory=$M2_HOME 

单击ApplyOK

如果你在OSX 10.9.4上安装maven 3的时候遇到这个问题,那么看看这篇博文 。

如果您不想使用M2_HOME,并且想要将IntelliJ引导至Maven安装,您可以简单地通过以下设置:

  • 转到文件=>设置=> Maven => Maven主目录
  • 指向你的Maven构build目录,例如/usr/local/maven/apache-maven-3.0.4

更好的方法是为最新版本提供符号链接(例如“最新”),并指出您的IntelliJ使用它来保持一致性,并给出安装在您盒子上的最新版本的Maven的最新版本。