场景:我在/etc/profile已经配置并加载了JDK1.8,但是过一会再次查看还是会变成1.7
cat /etc/profile
[root@ecs-7942-0812397 jjjj]# java -version
java version "1.7.0_141"
OpenJDK Runtime Environment (rhel-2.6.10.1.el6_9-x86_64 u141-b02)
OpenJDK 64-Bit Server VM (build 24.141-b02, mixed mode)
原因:猜测可能安装了好几个版本的JDK,
[root@ecs-7942-0812397 jjjj]# rpm -qa | grep java
tzdata-java-2012j-1.el6.noarch
java-1.6.0-openjdk-1.6.0.41-1.13.13.1.el6_8.x86_64
java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el6_9.x86_64
解决:看上面确实有2两个,卸载就好
[root@ecs-7942-0812397 jjjj]# rpm -e --nodeps java-1.6.0-openjdk-1.6.0.41-1.13.13.1.el6_8.x86_64
[root@ecs-7942-0812397 jjjj]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.141-2.6.10.1.el6_9.x86_64
然后重新加载JDK
[root@ecs-7942-0812397 jjjj]# java -version
bash: /usr/bin/java: 没有那个文件或目录
[root@ecs-7942-0812397 jjjj]# source /etc/profile
[root@ecs-7942-0812397 jjjj]# java -version
java version "1.8.0_151"