一、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环境变量的更多相关文章

  1. 自动配置/切换/查看JDK环境变量

    最近老是需要几个版本的JDK切换工作,于是网上收集资料整理,自己写了一个:自动配置/切换/查看JDK环境变量的批处理脚本.顺带3个JDK版本分别是:jdk1.6.0_43,jdk1.7.0_80,jd ...

  2. mac下host配置 + mac修改了环境变量却不生效:zsh: command not found: xxx

    https://blog.csdn.net/hlllmr1314/article/details/52228672 在/etc/profile中配置了go语言环境变量: export GOROOT=/ ...

  3. windows下 两个版本的JDK环境变量进行切换 MARK

    我们平时在window上做开发的时候,可能需要同时开发两个甚至多个项目,有时不同的项目对JDK的版本要求有区别,为了简化操作,我们可以通过批处理文件来完成环境变量切换的任务.使用方法:阅读代码我们就会 ...

  4. Linux(CentOS7)下如何配置多个Tomcat容器

    一.Linux版本 二.上传并解压apache-tomcat-7.0.90压缩包,然后复制粘贴出来多个tomcat 解压缩 tar -xzvf apache-tomcat-7.0.90.tar.gz ...

  5. Ubuntu下安装配置android sdk及其环境变量

    同理,这里介绍的是手动安装方法~ *系统;Ubuntu 16.4 1.下载Android sdk,直接在系统自带的firefox浏览器输入 http://tools.android-studio.or ...

  6. Windows系统 配置Java的JDK环境变量

    安装了JDK或者绿色版后,在系统的环境变量设置中,进行以下配置: 1.新建->变量名"JAVA_HOME",变量值"D:\jdk1.8.0_05"(即JD ...

  7. Linux centos7下安装配置redis及Redis desktop Manager工具连接注意事项

    基本工具:VMware12.CentOS-7-x86_64-Everything-1611.iso.redis-desktop-manager-0.8.0.3841 废话不多说,首先,关于什么是Red ...

  8. 配置Java,jdk环境变量

    注意:所有的都是配系统变量 变量名:JAVA_HOME 变量值:D:\Program Files\Java\jdk1.8.0_202(以自己的为准)变量名:Path 变量值:%JAVA_HOME%\b ...

  9. 配置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 ...

随机推荐

  1. 瑞芯微发布最新旗舰应用处理器-RK3588

    在瑞芯微电子第四届“开发者之春”大会上,瑞芯微推出了新一代8nm旗舰处理器-RK3588 这个芯片将采用8nm 制程工艺.基于A76+A55 内核组合,具备4K UI性能.8K VPU,拥有NPU2. ...

  2. Postgresql数据库部署之:Postgresql本机启动和Postgresql注册成windows 服务

    1.初始化并创建数据库(一次即可)  initdb \data --locale=chs -U postgres -W  You can now start the database server u ...

  3. 教你如何把openfire的muc聊天室改造为群

    openfire群聊与QQ群对比 应该是去年的时候开始接触openfire,当时在分析后发现基于xmpp协议的openfire已经具备了群聊的功能.也就没太当回事,觉得加点功能就可以做成类似于QQ群的 ...

  4. redis发布订阅Java代码实现

    Redis除了可以用作缓存数据外,另一个重要用途是它实现了发布订阅(pub/sub)消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息. 为了实现redis的发布订阅机制,首先要打开re ...

  5. 【Python实践-5】使用迭代查找一个list中最小和最大值

    # -*- coding: utf-8 -*- #使用迭代查找一个list中最小和最大值,并返回一个tuple #遍历list,找到最小值 def findMinAndMax(L): if L==[] ...

  6. sklearn中的Pipeline

    在将sklearn中的模型持久化时,使用sklearn.pipeline.Pipeline(steps, memory=None)将各个步骤串联起来可以很方便地保存模型. 例如,首先对数据进行了PCA ...

  7. 死磕 java集合之ConcurrentHashMap源码分析(三)

    本章接着上两章,链接直达: 死磕 java集合之ConcurrentHashMap源码分析(一) 死磕 java集合之ConcurrentHashMap源码分析(二) 删除元素 删除元素跟添加元素一样 ...

  8. 我的2018OKR年终回顾与2019OKR初步规划

    转眼一年又过去了,在这个年底的时候,按照国际惯例,又到了重新回顾审视一下这一年来的得失,规划一下明年的奋斗方向的时候了.因此,我继续使用OKR来给自己做Review和Planning,也希望自己能够保 ...

  9. .net core自定义高性能的Web API服务网关

    网关对于服务起到一个统一控制处理的作用,也便于客户端更好的调用:通过网关可以灵活地控制服务应用接口负载,故障迁移,安全控制,监控跟踪和日志处理等.由于网关在性能和可靠性上都要求非常严格,所以针对业务需 ...

  10. 通过数据分析告诉你北京Python开发的现状

    相信各位同学多多少少在拉钩上投过简历,今天突然想了解一下北京Python开发的薪资水平.招聘要求.福利待遇以及公司地理位置.既然要分析那必然是现有数据样本.本文通过爬虫和数据分析为大家展示一下北京Py ...