java 1.7 mac_mac下同时安装jdk1.7和jdk1.8

本文介绍了在Mac OS中如何解决安装JDK 1.7的版本不兼容问题,通过修改安装包内容并重新打包实现安装。安装完成后,详细讲解了如何配置和切换不同版本的JDK,包括设置环境变量和使用别名进行版本切换。此外,还提到了Linux和Windows环境下的JDK配置方法。
摘要由CSDN通过智能技术生成

1.安装jdk1.7时会弹出报错,说版本不兼容。

e4a2cffa6902a65acf5557dffd9afa64.png

解决方案

双击安装包,使安装包挂在到机器上,即在Finder里可以看到一个名字为JDK 7 Update 60的Device。

在terminal下输入以下命令,命令中的路径可能不同

$ pkgutil --expand /Volumes/JDK\ 7\ Update\ 60/JDK\ 7\ Update\ 60.pkg /tmp/jdk.unpkg

$ cd /tmp/jdk.unpkg

$ vim Distribution

将打开的文件内容替换,找到pm_install_check方法,修改为以下就行。

function pm_install_check() {return true;

}

重新打包

$ pkgutil --flatten /tmp/jdk.unpkg /tmp/jdk.pkg

开始重新安装包(新的包)

$ open /tmp/jdk.pkg

1

注意:原始挂在到机器上的安装包,一定得先关了才可以。

2)

配置

安装完成之后,调出terminal命令行工具,检验安装是否成功:

$ java -version

java version"9"Java(TM) SE Runtime Environment (build9+181)

Java HotSpot(TM)64-Bit Server VM (build 9+181, mixed mode)

那如何进行版本切换呢?先看当前生效的JDK路径:

$ which java

/usr/bin/java

$ cd/usr/bin

$ ls-l

……

lrwxr-xr-x 1 root wheel 74 Oct 21 18:10 java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

lrwxr-xr-x 1 root wheel 75 Oct 21 18:10 javac -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javac

lrwxr-xr-x 1 root wheel 77 Oct 21 18:10 javadoc -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/javadoc

……

70322fcd80c134cf209ddafc447619cf.png

可以发现这个java只是一个当前系统生效的JDK的一个软连接,Java安装的是实际位置位于

/Library/Java/JavaVirtualMachines

使用如下的命令可以指定当前系统使用哪个版本的JDK:

$ /usr/libexec/java_home -v 版本号

编辑bash_profile文件,添加如下内容(注意:JDK9不是 -v 1.9):

$ vi ~/.bash_profile

export JAVA_7_HOME="$(/usr/libexec/java_home -v 1.7)"

export JAVA_8_HOME="$(/usr/libexec/java_home -v 1.8)"

export JAVA_9_HOME="$(/usr/libexec/java_home -v 9)"

alias jdk7='export JAVA_HOME=$JAVA_7_HOME'

alias jdk8='export JAVA_HOME=$JAVA_8_HOME'

alias jdk9='export JAVA_HOME=$JAVA_9_HOME'

# 默认使用JDK8

export JAVA_HOME=$JAVA_8_HOME

$ source ~/.bash_profile

版本切换

如上配置之后,默认使用JDK1.8,然后使用jdk7、jdk8或jdk9来切换当前系统的JDK版本:

$ java -version

java version "1.7.0_80"

Java(TM) SE Runtime Environment (build 1.7.0_80-b15)

Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

# 切换到JDK1.8,使用如下命令

$ jdk8

$ java -version

java version "1.8.0_111"

Java(TM) SE Runtime Environment (build 1.8.0_111-b14)

Java HotSpot(TM) 64-Bit Server VM (build 25.111-b14, mixed mode)

# 切换到JDK9

$ jdk9

$ java -version

java version "9"

Java(TM) SE Runtime Environment (build 9+181)

Java HotSpot(TM) 64-Bit Server VM (build 9+181, mixed mode)

其他

linux环境下JDK配置备份如下:

$ sudo vi ~/.bashrc

export JAVA_HOME=/my/java/home/jdk180

export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

$ source ~/.bashrc

windows环境下JDK配置如下:

JAVA_HOME=/my/java/home/jdk180

CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\jre\lib

PATH=%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;%PATH%

参考:http://adolphor.com/blog/2016/12/24/install-multiple-jdk-to-macos.html

https://blog.csdn.net/zw235345721/article/details/78702254

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值