我正在尝试使用OS X Lion上的IntelliJ IDEA 10.5.1进行简单的maven构建,并收到以下错误:
运行my-app [package]时出错:找不到有效的Maven安装。 在配置对话框中设置主目录或设置 系统上的M2_HOME环境变量。
我已将M2_HOME设置为以下内容,但我仍然遇到问题。是的,我确实重启了IntelliJ。
$ echo $M2_HOME
/usr/share/maven
然后我在IntelliJ的Maven设置中为项目手动输入了maven的路径。这不是我想要为每个项目做的事情,所以有什么我想知道如何让IntelliJ知道我的maven家在哪里?
答案 0 :(得分:28)
Mac OS应用无法读取bash环境变量。查看此问题Setting environment variables in OS X?以向所有应用程序(包括IntelliJ)公开M2_HOME
。执行此操作后,您需要重新启动。
答案 1 :(得分:20)
输入终端:
$ 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
在配置对话框中将此路径键入字段。这一切都要解决!
答案 2 :(得分:11)
另一种选择是在IntelliJ IDEA=>Preferences=>IDE Settings=>Path Variables
重新启动IntelliJ后,IntelliJ IDEA=>Preferences=>Project Settings=>Maven=>Maven home directory
应设置为您的M2_HOME变量。
答案 3 :(得分:8)
得到这个答案?可能上面的答案很长......
输入:
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
答案 4 :(得分:7)
如果M2_HOME
配置为指向Maven主目录,则:
File -> Settings
Maven
Runner
在字段VM Options
中插入以下字符串:
Dmaven.multiModuleProjectDirectory=$M2_HOME
点击Apply
和OK
答案 5 :(得分:3)
如果您在OSX 10.9.4上使用maven 3的自制安装遇到此问题,请查看此blog post。
答案 6 :(得分:2)
如果您不想使用M2_HOME并希望将IntelliJ定向到maven安装,您可以通过以下方式进行设置:
更好的方法是使用符号链接,例如'最新'对于最新版本,并指出您的IntelliJ使用它来保持一致性,给出最新版本的maven安装在盒子上的最新版本。