试图让 Maven、Java 和 OS X 很好地协同工作——我已经在 Linux 和 Windows 机器上做过多次,没有问题。我假设我需要做的就是下载 Maven,设置我的环境变量,我会很好。所以这是我的 .bash_profile 中的一个片段...
export JAVA_HOME=/Library/Java/Home/
export M2_HOME=/usr/local/apache-maven/apache-maven-2.2.1
export PATH=$PATH:$M2_HOME/bin
JAVA_HOME
设置是 Apple 建议在 this Q&A page 上使用的设置.然而,在启动终端并运行 mvn --version
后,输出如下...
Apache Maven 2.2.1 (r801777; 2009-08-06 15:16:01-0400)
Java version: 1.6.0_17
Java home: /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
Default locale: en_US, platform encoding: MacRoman
OS name: "mac os x" version: "10.6.2" arch: "x86_64" Family: "mac"
知道为什么 Maven 忽略了我在 .bash_profile 中设置的 JAVA_HOME
吗?它会导致问题,因为在 Maven 使用的 JAVA_HOME
中找不到诸如 rt.jar
之类的东西。我可以通过在 Maven 正在使用的 home 中创建符号链接(symbolic link)和其他 hackery 来解决这个问题,但我宁愿让它正常工作,因为下次 Apple 推送 Java 更新时,这只会让我崩溃。感谢您的帮助...
最佳答案
问题是 JavaVm.framework 版本中的符号链接(symbolic link)“CurrentJDK”指向旧的 jdk,所以当我使用以下命令将 CurrentJDK 设置为最新版本 (1.7.0_45) 时,它起作用了
cd /System/Library/Frameworks/JavaVM.framework/Versions
sudo rm CurrentJDK
sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents CurrentJDK
引用: http://java.dzone.com/articles/installing-jdk-7-mac-os-x
关于java - Maven,带有 OS X 的 JAVA_HOME,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2013346/