如何在macOS Sierra 10.12.6(16G29)上将Java从9降级到8.我尝试删除Java插件并安装了Java 8,但Java和javac版本在终端显示9,但在系统首选项中它是8.提前感谢!
mde*_*man 263
你不需要降级.您可以在MacOS上运行多个版本的Java.您可以在MacOS中使用此命令设置终端的版本.
# List Java versions installed
/usr/libexec/java_home -V
# Java 11
export JAVA_HOME=$(/usr/libexec/java_home -v 11)
# Java 1.8
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
# Java 1.7
export JAVA_HOME=$(/usr/libexec/java_home -v 1.7)
# Java 1.6
export JAVA_HOME=$(/usr/libexec/java_home -v 1.6)
Run Code Online (Sandbox Code Playgroud)
您可以在.bashrc,.profile或.zprofile中设置默认值
VK3*_*321 112
这就是我做到的.您不需要删除Java 9.
第1步: 安装Java 8
您可以从这里下载Java 8:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
步骤2:安装Java 8.确认所有版本的安装.在终端中键入以下命令.
/usr/libexec/java_home -V
Run Code Online (Sandbox Code Playgroud)
第3步:编辑.bash_profile
sudo nano ~/.bash_profile
Run Code Online (Sandbox Code Playgroud)
第4步:默认添加1.8.(将以下行添加到bash_profile文件中).
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
Run Code Online (Sandbox Code Playgroud)
现在按CTRL + X退出bash.按"Y"保存更改.
第5步:重新加载bash_profile
source ~/.bash_profile
Run Code Online (Sandbox Code Playgroud)
第6步:确认Java的当前版本
java -version
Run Code Online (Sandbox Code Playgroud)
如果您的Mac上安装了多个Java版本,可以使用终端快速切换默认版本.在这个例子中,我将把Java 10切换到Java 8.
$ java -version
java version "10.0.1" 2018-04-17
Java(TM) SE Runtime Environment 18.3 (build 10.0.1+10)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10.0.1+10, mixed mode)
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
10.0.1, x86_64: "Java SE 10.0.1" /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
1.8.0_171, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)
然后,在.bash_profile中添加以下内容.
# Java 8
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)
现在,如果再次尝试java -version,您应该会看到所需的版本.
$ java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
Run Code Online (Sandbox Code Playgroud)
由于它允许安装多个版本的java,我在不知不觉中安装了许多3个版本,但它指向最新版本“11.0.2”
我可以通过以下步骤解决此问题以移动到“1.8”
$java -version
Run Code Online (Sandbox Code Playgroud)
openjdk 版本“11.0.2”2019-01-15 OpenJDK 运行时环境 18.9(内部版本 11.0.2+9) OpenJDK 64 位服务器 VM 18.9(内部版本 11.0.2+9,混合模式)
cd /Library/Java/JavaVirtualMachines
ls
Run Code Online (Sandbox Code Playgroud)
jdk1.8.0_201.jdk jdk1.8.0_202.jdk openjdk-11.0.2.jdk
sudo rm -rf openjdk-11.0.2.jdk
sudo rm -rf jdk1.8.0_201.jdk
ls
Run Code Online (Sandbox Code Playgroud)
jdk1.8.0_202.jdk
java -version
Run Code Online (Sandbox Code Playgroud)
java 版本“1.8.0_202-ea” Java(TM) SE 运行时环境(内部版本 1.8.0_202-ea-b03) Java HotSpot(TM) 64 位服务器 VM(内部版本 25.202-b03,混合模式)
老问题,但只是遇到了这个问题 /dumb jira 有 java 10 的问题 / 并且在这里没有找到简单的答案,所以就离开它:
$ /usr/libexec/java_home -V显示已安装的版本及其位置,以便您可以简单地删除/Library/Java/JavaVirtualMachines/<the_version_you_want_to_remove>. 瞧
最简单的解决方案可能是与 Java 9 并行安装 Java 8(如果不是仍然存在)并指定要在eclipse.ini. 您可以在Eclipsepedia找到此设置的说明,包括如何eclipse.ini在 Mac 上查找的说明
| 归档时间: |
|
| 查看次数: |
71806 次 |
| 最近记录: |