linux下jdk多版本管理
linux下jdk多版本管理
项目开发中,不管是哪种语言都避免不了多个版本环境管理问题(本文虽然以jdk为例来写的,但不仅限于jdk),如何能做到快速的环境升级与切换确实是一件深思的事!
安装jdk
实验安装两个版本:
下载
- wget http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.tar.gz
- wget http://download.oracle.com/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz
安装
我把它安装到/opt中。
- tar -zxvf jdk-7u80-linux-x64.tar.gz
- 在/opt 创建目录:sudo mkdir java
- sudo mv jdk1.7.0_80 /opt/java
jdk8的方式也是一样。
创建软连接
- sudo ln -s jdk1.7.0_80 jdk
- 默认使用jdk7
更改环境变量
echo $PATH 输出下,其实这个相当于window系统下的path
cd ~ 进入到家目录
sudo vi .bashrc
最后加入:export PATH=/opt/java/jdk/bin:$PATH
source .bashrc
此时直接可以输出:java -verson,为java7
直接在 /etc/profile修改即可:
export JAVA_HOME=/opt/java/
export PATH=$JAVA_HOME/bin:$PATH
如果有天环境要做升级的话,比如要把jdk7升级到jdk8,我们只需要更改软连接地址:
- 把原来的jdk软连接删除掉
- 重新生成:sudo ln -s jdk1.8.0_144 jdk
- 此时已经升级完成
综述
以上版本管理的方式在linux中随处可见,比如python都是采用软连接的形式。
基于jenv工具管理
- git clone https://github.com/gcuisinier/jenv.git ~/.jenv
- cd ~ 会发现多出一个文件夹.jenv,这个就是jenv的软件包
把jenv目录导入到环境变量
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profileecho 'eval "$(jenv init -)"' >> ~/.bash_profilesource ~/.bash_profile
此时输入:jenv 会输出信息:jenv 0.4.3-18-g66bb5b1
以上已经安装了jdk,我们只需要把jdk加入到jenv即可:
- jenv add /opt/jdk1.7.0_80
- jenv add /opt/jdk1.8.0_144
看当前使用的java所在路径
jenv which java
查看可以设置的java版本
jenv versions
使用某个版本的JDK(全局)
jenv global 1.8
去掉某些没有的版本
jenv remove 1.8.0.144
linux下jdk多版本管理的更多相关文章
- windows+linux下jdk安装及java环境变量配置
对于初学java的用户来说,可能第一件要做的事情就是安装jdk及配置环境,以下内容主要讲述windows及linux下jdk的安装以及环境变量的配置. 1.首先下载相应平台可用版本jdk安装文件,可以 ...
- hadoop搭建杂记:Linux下JDK环境变量的设置(三种配置环境变量的方法)
Linux下JDK环境变量的设置(三种配置环境变量的方法) Linux下JDK环境变量的设置(三种配置环境变量的方法) ①修改/etc/profile文件 如果你的计算机仅仅作为开发使用时推荐使用这种 ...
- Linux下Jdk的安装和jdk环境变量的设置
我们在Linux下安装系统软件的时候,经常遇到一些系统环境变量配置的问题.什么是环境变量?如何定制环境变量?我将在下面做一些介绍.一.什么是环境变量?Linux是一个多用户的操作系统.多用户意味着每个 ...
- 解决Linux下jdk版本与安装版本不一致
解决Linux下jdk版本与安装版本不一致 在Linux下安装jdk后,利用java -version查看版本使,发现不是自己所安装的jdk版本; 解决方案: which java ——查看默认的jd ...
- linux下jdk环境变量配置深度分析----解决环境变量不生效的问题
1.linux下jdk环境变量配置 是否需要配置环境变量,主要看java -version 显示的版本是否为你期望的版本 1.1 不需要配置环境变量的情况 使用java -version查看,版本显示 ...
- Linux下jdk的安装和环境变量的配置
Linux下jdk的安装和环境变量的配置 一.jdk的下载 方式一:在官网下载 http://www.oracle.com/technetwork/java/javase/downloads/inde ...
- Linux下 JDK安装
在linux下安装JDK步骤如下: 第一步:查看Linux自带的JDK是否已安装 (1)查看jdk: [root@web-server ~]# rpm -qa|grep jdk ← 查看jdk的信息或 ...
- Linux下JDK、Tomcat
1.JDK的安装 1. 下载JDK 先查看Linux系统是多少位(32位/64位):getconf LONG_BIT.再从JDK官网(http://www.oracle.com/technetw ...
- linux 下 jdk+tomcat+mysql 的 jsp 环境搭建
JDK 在 linux 下安装 1. 把安装文件放在 /opt 下,并执行 [root@localhost opt]# ./jdk-1_5_0_06-linux-i586.bin 并 ...
随机推荐
- log4j教程 3、架构
Log4j API设计为分层结构,其中每一层提供了不同的对象,对象执行不同的任务.这使得设计灵活,根据将来需要来扩展. 有两种类型可用在Log4j的框架对象. 核心对象: 框架的强制对象和框架的使用. ...
- SparkStreaming数据源Flume实际案例分享
一.什么是Flume? flume 作为 cloudera 开发的实时日志收集系统,受到了业界的认可与广泛应用.Flume 初始的发行版本目前被统称为 Flume OG(original genera ...
- 介绍下Shell中的${}、##和%%使用范例
假设定义了一个变量为:代码如下:file=/dir1/dir2/dir3/my.file.txt可以用${ }分别替换得到不同的值:${file#*/}:删掉第一个 / 及其左边的字符串:dir1/d ...
- postman(一)批量执行接口测试用例
postman(一)批量执行接口测试用例 学习了:https://blog.csdn.net/github_36032947/article/details/78611405 还可以把collecti ...
- 页面加载后累加,自加1&&判断数字是否为两位数
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- iOS8.0 使用Photos.framework对相册的常用操作
转载自:http://blog.csdn.net/longitachi/article/details/50130957 1.判断相册访问权限 首先我们访问相册,肯定有需要判断是否有访问权限的时候,然 ...
- rabbit 函数参数详解
http://blog.csdn.net/chwshuang/article/details/50512057 http://www.cnblogs.com/LiangSW/p/6224333.htm ...
- JDBC编程理论知识(1)
1.SUN公司为统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC 2.JDBC全称为:Java Data Base Connectivity(java数据库连接),它主要由接口组 ...
- 给mysql root用户设置密码
使用其他用户进入数据库, 用select PASSWORD('你要设置的密码'), 然后直接update mysql.user set mysql.user.Password='你PASSWORD( ...
- 记录:Android中StackOverflow的问题
最近新作的项目上线,出现了一个让人抓狂的问题.在此记录一下! 现在的项目中,制作了一个界面非常复杂.整个结构是最外层一个Layout,封装了Menu键吊起的菜单,整个内容使用一个FrameLayout ...