linux下jdk多版本管理
项目开发中,不管是哪种语言都避免不了多个版本环境管理问题(本文虽然以jdk为例来写的,但不仅限于jdk),如何能做到快速的环境升级与切换确实是一件深思的事!
安装jdk
实验安装两个版本:
1.8 Url:http://www.oracle.com/technetwork/java/javase/downloads/index.html1.7 Url:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html
下载jdk链接
1.8下载地址: (可直接在ubuntu下 wget 获取)
http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz?AuthParam=1503292655_27269d0339b40836637a5e4dc5919193
1.7下载地址: (可直接在ubuntu下 wget 获取)
http://download.oracle.com/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz?AuthParam=1503292766_eaaabf5f3f570c89044e38dee0e2195f
安装jdk1.7
jdk-7u80-linux-x64 安装到/opt中
tar -zxvf jdk-7u80-linux-x64.tar.gz #将安装包解压 安装
sudo mkdir java #在opt中创建java文件夹 放各种不同版本的jdk
sudo mv jdk-7u80-linux-x64 /opt/java/ # jdk 8 的方式也是一样的
sudo ln -s jdk-7u80-linux-x64 jdk #创建软连接
修改环境变量
echo $PATH # 可打印出当前环境变量
cd ~ # 进入到家目录
sudo vim .bashrc # 编辑当前用户的环境变量配置文件
export PATH=/opt/java/jdk/bin:$PAth #修改环境变量 .bashrc
source .bashrc # 配置立即生效
cd / # 转到根目录
java -version # 此时显示 java1.7
修改jdk版本
如果环境要做升级,或者修改成不同版本的jdk的话,比如要把jdk7升级到jdk8
我们只需要更改软连接地址,把原来的jdk软连接删除掉
cd /opt/java
rm -Rf jdk #删除原有的jdk 软连接
- sudo ln -s jdk1.8.0_144 jdk #创建指向新版本jdk的软连接 此时就升级完成啦
综述
以上版本管理的方式在linux中随处可见,比如python都是采用软连接的形式。
关于jdk的版本管理工具---jenv
安装jenv
git clone https://github.com/gcuisinier/jenv.git ~/.jenv #将jenv克隆到本地路径
ls -la #会发现多出一个.jenv文件夹,这个就是jenv的软件包
修改环境变量
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(jenv init -)" >> ~/.bash_profile'
source ~/.bash_profile #修改配置文件 环境变量 并立即生效
jenv 常见命令
jenv --version #此时能够输出正确的版本号
jenv add /opt/jdk1.7 # 将jdk1.7加入到jenv
jenv add /opt/jdk1.8 # 将jdk1.8加入到jenv
jenv which java # 查看当前使用的jdk路径
jenv versions #查看当前可使用的jdk版本信息
jenv global 1.7 #全局使用某个jdk版本
jenv remove 1.8 去掉某些不需要的版本