我似乎无法让Maven使用Java 1.8.使用1.8作为目标会出现以下错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile
(default-compile) on project csaro: Fatal error compiling: invalid target
release: 1.8 -> [Help 1]
Run Code Online (Sandbox Code Playgroud)
错误的原因很明显:Maven没有使用正确版本的Java:
$ mvn -version
Apache Maven 3.2.2 (45f7c06d68e745d05611f7fd14efb6594181933e; 2014-06-17T07:51:42-06:00)
Maven home: /usr/local/Cellar/maven/3.2.2/libexec
Java version: 1.7.0_51, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.9.2", arch: "x86_64", family: "mac"
Run Code Online (Sandbox Code Playgroud)
但是安装的Java版本应该是1.8:
$ java -version
java version "1.8.0_20-ea"
Java(TM) SE Runtime Environment (build 1.8.0_20-ea-b22)
Java HotSpot(TM) 64-Bit Server VM (build 25.20-b21, mixed mode)
Run Code Online (Sandbox Code Playgroud)
并设置JAVA_HOME:
$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)
我也试过这里的命令(创建mavenrc).我已尝试多次重启计算机,并已验证env var已正确设置(已设置.bash_profile).
Maven安装了Homebrew.
Java 1.8在Eclipse中运行良好(使用m2e).我只是不能让Maven在命令行上工作.
Kir*_*rby 55
对我来说问题是,当我从jdk-8u25-macosx-x64.dmg安装安装时没有更新/System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK目录链接到新的1.8 JDK.这可能不是原始问题的问题,但当我遇到相同的错误消息时,它是我的解决方案.
我不知道为什么安装程序没有链接它并使问题更加混乱,路径是不同的,这取决于你是从Oracle还是Apple安装它.请参阅Mac OS X 10.6.7 Java Path当前JDK令人困惑
我做了以下修复我的环境
cd /System/Library/Frameworks/JavaVM.framework/Versions
sudo rm CurrentJDK
sudo ln -s /Library/Java/JavaVirtualMachines/<installed_jdk_version>.jdk/Contents CurrentJDK
Run Code Online (Sandbox Code Playgroud)
Kat*_*Kat 46
事实证明,我有一个被~/.mavenrc设置值的遗忘文件JAVA_HOME.
对于将来的读者,请检查以下位置以查找可能覆盖的位置JAVA_HOME(按优先顺序排列):
~/.bash_profile~/.bash_login~/.bashrc~/.profile/etc/mavenrc~/.mavenrcAbd*_*ull 25
我在CentOS 6.5系统上遇到了同样的问题.
java -version返回了Java 8版本,但javac -version返回了Java 7版本.
我必须运行以下命令才能使各种与Java相关的符号链接指向我的JDK 8安装:
sudo alternatives --config java
sudo alternatives --config javac
sudo alternatives --config jre_openjdk
sudo alternatives --config java_sdk_openjdk
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
97010 次 |
| 最近记录: |