This repository has been archived by the owner on Sep 22, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 97
安装 Oracle JDK
Alick Zhao edited this page Jan 22, 2016
·
11 revisions
学习 Android, Java 开发的同学,肯定都配置过 Oracle JDK 开发环境。许多网上的教程,都建议在 /etc/profile
添加环境变量。但 Fedora 下虚拟终端 gnome-terminal 默认不是登陆 Shell(可在配置中修改),不读取该配置文件,导致系统无法找到 JDK。
现在,社区源添加了 oracle-jdk
安装包,所需配置大大简化。
$ sudo dnf install oracle-jdk8 oracle-jdk7
该包在安装时,从 Oracle 官网下载 JDK。
安装后,有两种方法进行配置。
/etc/sysconfig/oracle-jdk
是 JDK 环境变量配置文件,可以添加多个 JDK 版本,方便切换。
该环境变量优先于使用 alternatives
配置的 OpenJDK。
只需在 ~/.bashrc
或 ~/.bash_profile
添加以下命令即可:
# JDK variables
test -f /etc/sysconfig/oracle-jdk && . /etc/sysconfig/oracle-jdk ||:
官方 Wiki 建议将用户自定环境变量添加到 ~/.bash_profile
,它仅在启动交互式登陆 Shell(登陆系统)时载入。
如果将环境变量添加到 ~/.bashrc
,则每次打开一个虚拟终端都将载入该配置,因为所有交互式 Shell 都载入 ~/.bashrc
。
/etc/sysconfig/oracle-jdk
已做限制,写入 ~/.bashrc
不会造成重复定义环境变量,导致变量嵌套的问题。
使用 alternatives 可以更优雅的切换 JDK,而无需设置环境变量。
$ sudo alternatives --config javac # 切换 jdk
* 1 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-15.b17.fc23.x86_64/bin/javac
+ 2 /usr/lib/jvm/jdk1.8.0_66/bin/javac
3 /usr/lib/jvm/jdk1.7.0_80/bin/javac
$ sudo alternatives --config java # 切换 jre
* 1 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.65-15.b17.fc23.x86_64/jre/bin/java
+ 2 /usr/lib/jvm/jdk1.8.0_66/jre/bin/java
3 /usr/lib/jvm/jdk1.7.0_80/jre/bin/java