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 ...
随机推荐
- MSSQL2008 R2 数据库展开报错:值不能为空 参数名:viewInfo
打开数据库时报错,提示应用程序组件中发生了无法处理的异常.如果单击“继续”,应用程序将忽略此错误并尝试继续. 针对此类问题的解决办法是:将路径C:\Documentsand Settings\Admi ...
- C#异步编程----Thread
一.问题由来 多线程能实现的基础: 1.CPU运行速度太快,硬件处理速度跟不上,所以操作系统进行分时间片管理.这样,宏观角度来说是多线程并发 ,看起来是同一时刻执行了不同的操作.但是从微观角度来讲,同 ...
- 好程序员web前端分享CSS基础篇
学习目标 1.CSS简介 2.CSS语法 3.样式的创建 4.两种引入外部样式表的区别 5.样式表的优先级和作用域 6.CSS选择器 7.选择器的权重 8.浮动属性的简单应用 9.HTML.CSS注释 ...
- IM开发者的零基础通信技术入门(一):通信交换技术的百年发展史(上)
[来源申明]本文原文来自:微信公众号“鲜枣课堂”,官方网站:xzclass.com,原题为:<通信交换的百年沧桑(上)>,本文引用时已征得原作者同意.为了更好的内容呈现,即时通讯网在收录时 ...
- Go语言strings包
目录 strings包实现了用于操作字符的简单函数. func EqualFold 判断两个utf-8编码字符串(将unicode大写.小写.标题三种格式字符视为相同)是否相同. func Equal ...
- zsh: command not found: conda的一种解决方法
通过conda —version来验证conda命令是否可用,若出现下图 则需要修改.zshrc,如下: 第一步: 第二步: 注意,1:/Users/mac/是anaconda的安装路径,须根据自己情 ...
- 《代码整洁之道》(Clean Code)- 读书笔记
一.关于Bob大叔的Clean Code <代码整洁之道>主要讲述了一系列行之有效的整洁代码操作实践.软件质量,不但依赖于架构及项目管理,而且与代码质量紧密相关.这一点,无论是敏捷开发流派 ...
- Window环境下配置MySQL 5.6的主从复制、备份恢复
1.环境准备 Windows 7 64位 MySQL 5.6 主库:192.168.103.207 从库:192.168.103.208 navicat无法连接MySQL8解决方案 #修改加密规则 A ...
- Spring Boot分布式系统实践【基础模块构建3.3】注解轻松实现操作日志记录
日志注解 前言 spring切面的编程,spring中事物处理.日志记录常常与pointcut相结合 * * Pointcut 是指那些方法需要被执行"AOP",是由"P ...
- Jvm垃圾回收器(终结篇)
知识回顾: 第一篇<Jvm垃圾回收器(基础篇)>主要讲述了判断对象的生死?两种基础判断对象生死的算法.引用计数法.可达性分析算法,方法区的回收.在第二篇<Jvm垃圾回收器(算法篇)& ...