转自:
https://www.cnblogs.com/xu-dong/p/6429301.html
https://blog.csdn.net/xiaoxiaonvwu/article/details/70837745
https://www.cnblogs.com/rysj/p/9173667.html
https://blog.csdn.net/q979076061/article/details/72830664
其他文章
https://www.cnblogs.com/suntingme/p/5900716.html
https://blog.csdn.net/u014369343/article/details/71172747/
https://blog.csdn.net/qq_24879495/article/details/77944569
https://www.linuxidc.com/Linux/2012-09/71358.htm
https://blog.csdn.net/yejiyueshang/article/details/79415066
1. 上传jdk7 和 jdk8 包
2. 解压
[root@localhost webapps]# tar -zxvf /package/jdk-7u80-linux-x64.tar.gz
3. 配置jdk变量
vi /etc/profile
export JAVA_HOME=/package/jdk1.7.0_80
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
保存退出后
#source /etc/profie
4. java -version
5. 给jdk1.7设置序列号
[xxx@localhost home]$ alternatives --install /usr/bin/java java /package/jdk1.7.0_80 3
6. 安装jdk1.8
[xxx@localhost home]$ alternatives --install /usr/bin/java java /package/jdk1.8.0_124 2
7.选择jdk对应的数字--切换jdk版本
[root@localhost ~]# java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
[root@localhost ~]# alternatives --config java
There are 3 programs which provide 'java'.
Selection Command
-----------------------------------------------
* 1 /package/jdk1.8.0_121/java
2 /package/jdk1.8.0_121/bin/java
+ 3 /package/jdk1.7.0_80/bin/java
Enter to keep the current selection[+], or type selection number: 2
[root@localhost ~]# java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)
*******************************************************************************************************
问题:
测试环境部署服务器,不同的项目所用的jdk版本不一样,自动化部署编译的时候需要切换jdk版本
解决方法:
脚本中修改环境变量,实现临时切换。
-
export JAVA_HOME=/usr/local/1.7.0_79
-
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
-
export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$CLASSPATH
注意:
此变化只在shell脚本内有效,是临时的!
*******************************************************************************************************
linux多项目分别使用不同jdk版本(tomcat版)
此操作只针对tomcat
背景:linux服务器普通用户默认版本为jdk6,jboss项目使用jdk6版本 ,但是tomcat需要使用jdk7。当然也可以分开使用不同账户来启用这两个项目,下面主要介绍单修改tomcat配置来解决。
一、下载JDK,官网下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html(以jdk7为例)
二、解压后放到/usr/java/目录 (目录随意,但是写环境变量是一定注意)
三、进入到tomcat程序路径下,修改tomcat路径/bin目录下的catalina.sh文件。
添加如下内容(路径是jdk下载解压后的路径)
export JAVA_HOME=/usr/java/jdk1.7.0_80/
export JRE_HOME=/usr/java/jdk1.7.0_80/jre
截图
四、:wq 保存文件,
五、./startup.sh启动程序即可,
六、ps -ef |grep java 查看是否成功!
*******************************************************************************************************
Elasticsearch 使用指定 Java 运行
在使用elasticsearch的时候,有时候可能会出现Java版本对不上的情况,比如我用的2.4.1就要求jdk必须至少1.8,由于服务器上的统一版本是jdk1.7,这个时候在不能修改JAVA_HOME的情况下,怎么能够让elasticsearch运行得起来呢?
百度了一会儿,发现没人遇到这情况,没办法,自己想办法吧,经过几次思考,还好找到了解决方法,其实方法很简单,找到bin目录下的elasticsearch启动脚本
你能够发现,启动脚本实际上用到了JAVA_HOME,那么很简单,我们将脚本中的所有JAVA_HOME替换为ES_JAVA_HOME就好了,替换完这里,下一步就是配置系统的环境变量,配置一个ES_JAVA_HOME出来
配置环境的时候建议配置当前用户的,如Linux系统下 vi ~/.bashrc 然后在里面配置上ES_JAVA_HOME写上你要使用的Java目录就行了(注意,这里配置方法与JAVA_HOME一样,不需要到bin,也不要将ES_JAVA_HOME加到path中,因为系统中已经配置了一个JAVA_HOME了,配置了之后可能会出现冲突,反而出问题了)
*******************************************************************************************************
CentOS6下卸载系统默认jdk:
1、查找
rpm -qa|grep java
2、卸载
yum remove -y java-*.*-gcj