如何更改mac上的Java默认版本?
当前回答
博士tl;
加一行:
出口JAVA_HOME = ' /图书馆/ Java / JavaVirtualMachines / jdk1.8.0_144.jdk /内容/家庭的
到文件
~ / . bash_profile
(取代jdk1.8.0_144。JDK的下载版本)
然后源~/.bash_profile
其他回答
function setjdk() {
if [ $# -ne 0 ]; then
removeFromPath '/System/Library/Frameworks/JavaVM.framework/Home/bin'
if [ -n "${JAVA_HOME+x}" ]; then
removeFromPath $JAVA_HOME
fi
export JAVA_HOME=`/usr/libexec/java_home -v $@`
export PATH=$JAVA_HOME/bin:$PATH
fi
}
把这个放在你的~/里。配置文件并在您的终端中使用它,如setjdk 1.8, setjdk 1.7, setjdk 9等…
如果你没有removeFromPath,那么它是:
函数removeFromPath() { export PATH=$(echo $PATH | sed -E -E ' s;:$1;;"- e”年代;1美元:?;;”) }
检查Java版本:Java -version
版本切换:https://devqa.io/brew-install-java/
开放的~ / . bash_profile
export JAVA_8_HOME=$(/usr/libexec/java_home -v1.8)
export JAVA_11_HOME=$(/usr/libexec/java_home -v11)
别名java8=“出口JAVA_HOME=$ java_8_homs” 别名java11=“出口JAVA_HOME=$ java_11_homs”
源~ / . bash_profile
当我们切换到java11或java8时,java -version命令没有显示正确的版本。
在这种情况下,使用mvn -version查看用于构建解决方案的正确java版本
太简单的解决方法:真让人头疼——这是一个快速简单的解决方法,对我来说很有效。
Mac OS Sierra版本10.12.13
使用快捷键:CMD+SHIFT+G -输入"/Library/" 找到JAVA文件夹 右键单击Java文件夹=移动到废纸篓(需要密码) 安装: Java SE开发工具包8 jdk-8u131-macosx-x64。下载Javascript SDK 确保新的JAVA文件夹出现在/LIBRARY/中 安装Eclipse |为Java开发人员安装Eclipse IDE 繁荣做
使用jenv,它就像一个Java环境管理器。它非常容易使用和清洁
对于Mac,请按照以下步骤操作:
brew install jenv
git clone https://github.com/gcuisinier/jenv.git ~/.jenv
安装:如果您正在使用bash,请遵循以下步骤:
$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(jenv init -)"' >> ~/.bash_profile
$ exec $SHELL -l
向jenv添加所需的JVM版本:
jenv add /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
jenv add /System/Library/Java/JavaVirtualMachines/1.8.0.jdk/Contents/Home
检查已安装版本:
jenv versions
设置您想要使用的Java版本:
jenv global oracle64-1.6.0
如果你仍然不能设置它。使用该命令。
export JAVA_HOME=/usr/libexec/ JAVA_HOME
那你就得用这个。
export JAVA_HOME=$(/usr/libexec/ JAVA_HOME -v 1.8)
它肯定会起作用。
推荐文章
- IntelliJ IDEA with Junit 4.7”!!JUnit 3.8或更高版本:
- 既然JavaScript和Java没有任何关系,它为什么被称为JavaScript ?
- 番石榴vs Apache Commons
- Java是编译型编程语言还是解释型编程语言?
- 我如何通过Java应用程序使用GMail,雅虎或Hotmail发送电子邮件?
- 注释@GetMapping和@RequestMapping(method = RequestMethod.GET)之间的区别
- lambda表达式中使用的变量应该是final或有效final
- 如何创建数组列表的数组?
- noclassdeffounderror:无法初始化类XXX
- 如何创建今天午夜和明天午夜的Java日期对象?
- ByteBuffer在Java中的用途是什么?
- 使Hibernate忽略未映射的实例变量
- 映射enum在JPA与固定的值?
- 如何找到可用的端口?
- 假唤醒在Java中真的发生了吗?