Linux(CentOS7)下如何配置多个JDK环境变量
一、Linux版本

二、复制粘贴多个JDK出来,如下
cp -R jdk1.7.0_80/ jdk1.7.0_80-2
cp -R jdk1.7.0_80/ jdk1.7.0_80-3

三、配置多个JDK环境变量
在/etc/profile文件后面追加如下内容
# JDK1环境配置
export JAVA_HOME=/usr/local/program/jdk1.7.0_80
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
# JDK2环境配置
export JAVA_HOME_2=/usr/local/program/jdk1.7.0_80-2
export JRE_HOME_2=$JAVA_HOME_2/jre
export CLASSPATH_2=.:$JAVA_HOME_2/jre/lib/rt.jar:$JAVA_HOME_2/lib/dt.jar:$JAVA_HOME_2/lib/tools.jar
export PATH_2=$JAVA_HOME_2/bin:$PATH
# JDK3环境配置
export JAVA_HOME_3=/usr/local/program/jdk1.7.0_80-3
export JRE_HOME_3=$JAVA_HOME_3/jre
export CLASSPATH_3=.:$JAVA_HOME_3/jre/lib/rt.jar:$JAVA_HOME_3/lib/dt.jar:$JAVA_HOME_3/lib/tools.jar
export PATH_3=$JAVA_HOME_3/bin:$PATH
截图如下:

四、最后不要忘记使环境配置生效
source /etc/profile
通过打印JDK环境变量来验证JDK环境变量配置成功,如下命令
echo $JAVA_HOME
echo $JRE_HOME
echo $CLASSPATH
echo $PATH
echo $JAVA_HOME_2
echo $JRE_HOME_2
echo $CLASSPATH_2
echo $PATH_2
echo $JAVA_HOME_3
echo $JRE_HOME_3
echo $CLASSPATH_3
echo $PATH_3
看打印出来的字符串是否与刚刚在/etc/profile里配置的内容一致,如果内容一致则配置成功
五、针对每个tomcat,修改其启动时所要读取的JAVA_HOME、CLASSPATH等环境变量
1、修改apache-tomcat-7.0.90的catalina.sh,如下:
vim /usr/local/program/apache-tomcat-7.0.90/bin/catalina.sh
在文件开始处指定JDK环境变量,如下所示
# JDK1环境配置
export JAVA_HOME=/usr/local/program/jdk1.7.0_80
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

说明,其实第一个tomcat的JDK指定与否都无所谓,因为它默认会读取正确的系统环境变量,即$JAVA_HOME、$JRE_HOME、$CLASSPATH、$PATH,但另外两个复制粘贴出来的tomcat就必须指定JDK。
2、修改apache-tomcat-7.0.90-2的catalina.sh,如下:
vim /usr/local/program/apache-tomcat-7.0.90-2/bin/catalina.sh
在文件开始处指定JDK环境变量,如下所示
# JDK2环境配置
export JAVA_HOME_2=/usr/local/program/jdk1.7.0_80-2
export JRE_HOME_2=$JAVA_HOME_2/jre
export CLASSPATH_2=.:$JAVA_HOME_2/jre/lib/rt.jar:$JAVA_HOME_2/lib/dt.jar:$JAVA_HOME_2/lib/tools.jar
export PATH_2=$JAVA_HOME_2/bin:$PATH

3、修改apache-tomcat-7.0.90-3的catalina.sh,如下:
vim /usr/local/program/apache-tomcat-7.0.90-3/bin/catalina.sh
在文件开始处指定JDK环境变量,如下所示
# JDK3环境配置
export JAVA_HOME_3=/usr/local/program/jdk1.7.0_80-3
export JRE_HOME_3=$JAVA_HOME_3/jre
export CLASSPATH_3=.:$JAVA_HOME_3/jre/lib/rt.jar:$JAVA_HOME_3/lib/dt.jar:$JAVA_HOME_3/lib/tools.jar
export PATH_3=$JAVA_HOME_3/bin:$PATH

六、分别启动三个Tomcat,看看Tomcat读取的JDK是否是我们刚配置好的JDK
命令及截图如下:
/usr/local/program/apache-tomcat-7.0.90/bin/startup.sh
/usr/local/program/apache-tomcat-7.0.90-2/bin/startup.sh
/usr/local/program/apache-tomcat-7.0.90-3/bin/startup.sh

或者看一下Java进程
ps -ef |grep java

以上即配置好了多个JDK
Linux(CentOS7)下如何配置多个JDK环境变量的更多相关文章
- 自动配置/切换/查看JDK环境变量
最近老是需要几个版本的JDK切换工作,于是网上收集资料整理,自己写了一个:自动配置/切换/查看JDK环境变量的批处理脚本.顺带3个JDK版本分别是:jdk1.6.0_43,jdk1.7.0_80,jd ...
- mac下host配置 + mac修改了环境变量却不生效:zsh: command not found: xxx
https://blog.csdn.net/hlllmr1314/article/details/52228672 在/etc/profile中配置了go语言环境变量: export GOROOT=/ ...
- windows下 两个版本的JDK环境变量进行切换 MARK
我们平时在window上做开发的时候,可能需要同时开发两个甚至多个项目,有时不同的项目对JDK的版本要求有区别,为了简化操作,我们可以通过批处理文件来完成环境变量切换的任务.使用方法:阅读代码我们就会 ...
- Linux(CentOS7)下如何配置多个Tomcat容器
一.Linux版本 二.上传并解压apache-tomcat-7.0.90压缩包,然后复制粘贴出来多个tomcat 解压缩 tar -xzvf apache-tomcat-7.0.90.tar.gz ...
- Ubuntu下安装配置android sdk及其环境变量
同理,这里介绍的是手动安装方法~ *系统;Ubuntu 16.4 1.下载Android sdk,直接在系统自带的firefox浏览器输入 http://tools.android-studio.or ...
- Windows系统 配置Java的JDK环境变量
安装了JDK或者绿色版后,在系统的环境变量设置中,进行以下配置: 1.新建->变量名"JAVA_HOME",变量值"D:\jdk1.8.0_05"(即JD ...
- Linux centos7下安装配置redis及Redis desktop Manager工具连接注意事项
基本工具:VMware12.CentOS-7-x86_64-Everything-1611.iso.redis-desktop-manager-0.8.0.3841 废话不多说,首先,关于什么是Red ...
- 配置Java,jdk环境变量
注意:所有的都是配系统变量 变量名:JAVA_HOME 变量值:D:\Program Files\Java\jdk1.8.0_202(以自己的为准)变量名:Path 变量值:%JAVA_HOME%\b ...
- 配置Java的jdk环境变量
1.classpath E:\Java\jdk1..0_20\jre\lib\rt.jar;.;E:\Tomcat\lib; 2.JAVA_HOME E:\Java\jdk1..0_20; 3.Pat ...
随机推荐
- 2018~试试idea~
无聊~随便写了一个 输入控制台,发现点击run之后,反应要比eclipse慢一些,不知道是什么原因!!! 略略的操作了一下,还是和eclipse的使用习惯有很大的差异~
- k8s实战之从私有仓库拉取镜像 - kubernetes
1.实战目的 从私有docker仓库拉取镜像,部署pod.上一篇中,我们搭建了私有的镜像仓库,这一篇我们将与k8s结合实战使用私有仓库. 2.登录docker 为了完成本次实战,需要登录docker, ...
- kubernetes 安装备注
一.安装环境 阿里云:centos 7.3 master节点:外网IP(116.62.205.90).内网IP(172.16.223.200) node节点:外网IP(116.62.212.174). ...
- 最短路问题之Dijkstra算法
题目: 在上一篇博客的基础上,这是另一种方法求最短路径的问题. Dijkstra(迪杰斯特拉)算法:找到最短距离已经确定的点,从它出发更新相邻顶点的最短距离.此后不再关心前面已经确定的“最短距离已经确 ...
- 开发人员的必备工具Git(初级)
Git是什么 Git是目前世界上最先进的分布式版本控制系统. 这个软件用起来就应该像这个样子,能记录每次文件的改动: 举个栗子 : 版本 用户 说明 日期 1 张三 删除了软件服务条款5 ...
- javaScript设计模式之面向对象编程(object-oriented programming,OOP)(二)
接上一篇 面向对象编程的理解? 答:面向对象编程,就是将你的需求抽象成一个对象,然后针对这个对象分析其特征(属性)与动作(方法).这个对象我们称之为类.面向对象编程思想其中一个特点就是封装,就是把你需 ...
- Ubuntu16.04 部署配置GO语言开发环境 & 注意事项
1. 安装GO 安装go语言包: $ curl -O https://storage.googleapis.com/golang/go1.10.1.linux-amd64.tar.gz 下载完成后 ...
- springboot~ObjectMapper~dto到entity的自动赋值
实体与Dto自动赋值 在开发的过程中,实体之间相互赋值是很正常的事,但是我们一般的方法都通过set和get方法来进行的,如果要赋值的字段少那还行,但是需要赋值的字段超过10个,那就是个灾难,你会看到整 ...
- Asp.NetCore轻松学-实现一个轻量级高可复用的RabbitMQ客户端
前言 本示例通过对服务订阅的封装.隐藏细节实现.统一配置.自动重连.异常处理等各个方面来打造一个简单易用的 RabbitMQ 工厂:本文适合适合有一定 RabbitMQ 使用经验的读者阅读,如果你还没 ...
- 图像检索(4):IF-IDF,RootSift,VLAD
TF-IDF RootSift VLAD TF-IDF TF-IDF是一种用于信息检索的常用加权技术,在文本检索中,用以评估词语对于一个文件数据库中的其中一份文件的重要程度.词语的重要性随着它在文件中 ...