关于安装多个版本jdk之后java -version不正确的问题

问题描述:

今天突然想写一个socket通信的小应用,分别采用BIO、NIO、AIO的方式来实现,来复习前面看的关于TCP/UDP通信的知识。于是乎在原来安装了jdk1.6的机子上重新安装了jdk1.8。结果就出现了一个很蛋疼的问题:我原来的JAVA_HOME配置根本就没有改变,但是在命令行执行 java -version出现的却是1.8版本,而javac -version出现的是正常的1.6版本。

原因分析:

参考 http://www.oschina.net/question/942785_103000?fromerr=U6XKsOdO , 主要原因是javac -version是由JAVA_HOME指定的路径中的java版本来决定的。而java -version中找的java.exe是根据系统环境变量PATH来定的,而此前我系统中的PATH变量配置为:JAVA_HOME相关的配置在最后,也就是在system32的后面。这样因为每次安装jre的时候,都会讲java.exe拷贝到system32路径中,而java -version会依次变量PATH配置,如果找到了就不在继续往后找,这就导致java -version永远是最新版本的java。

解决办法:

其实只要将系统环境变量PATH中的JAVA_HOME相关的配置移到最前即可。 其他的可以删除system32中的java.exe javaw.exe javaws.exe,删除注册表等。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏运维技术迷

cubieboard(树莓派)安装Ubuntu+Apache+PHP+Mysql

其实说实话,我不太喜欢Apache,我比较青睐Nginx。但是CB不太给力,装了好几次LNMP都不成功。倒也不是说Nginx不成功,而是PHP和Mysql总是出...

34212
来自专栏云计算教程系列

如何在CentOs 6.4 上使用uWSGI+Nginx部署Flask Web服务器

Armin Ronacher的Flask是过去几年中为Python创建的Web应用程序框架领域中发生过的最伟大的事情之一。

761
来自专栏北京马哥教育

跟大神一起十五分钟制作一个属于自己得Linux操作系统!

一、前言 Linux操作系统至1991年10月5日诞生以来,就其开源性和自由性得到了很多技术大牛的青睐,每个Linux爱好者都为其贡献了自己的一份力,不管是在L...

3483
来自专栏云计算教程系列

如何在服务器上安装LAMP

在本教程中,我们将在Ubuntu上安装LAMP。Ubuntu将满足我们的第一个要求:Linux操作系统。没有服务器的同学可以在这里购买,不过我个人更推荐您使用免...

1051
来自专栏农夫安全

注入学习之sqli-labs-1(环境搭建)

前言 应广告老铁们的需求,本公众号专门开设一个注入学习的栏目,本次开设的专题栏目名称-sqli-labs,专门针对小白,后面会慢慢更新具体关卡的详细说明,本公...

42410
来自专栏北京马哥教育

Google招聘Linux工程师的20个面试问题及答案

? 作者 | Pradeep Kumar 来源 | linux中国 豌豆贴心提醒,本文阅读时间5分钟,文末有秘密! 1.如何查看当前的Linux服务器的...

3267
来自专栏张戈的专栏

libmemcached编译安装报错解决记录

我负责的几个公司内部网站,仅集成了 php 原生 memcache 组件,不支持 memcached 分片存储的自动容灾方案,近期出现过几例因 memcache...

3499
来自专栏龙首琴剑庐

win7 + manjaro linux 双系统安装

这里统一采用efi引导,因此windows系统必须win7 64 或更新系统。 1、在别的电脑选择一个PE系统写入U盘,比如大白菜,真的大白菜。 2、PE系统中...

54611
来自专栏zhisheng

全文搜索引擎 Elasticsearch 集群搭建入门教程

ElasticSearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口。Elasti...

552
来自专栏云计算

如何在Debian 9上安装和配置Graylog2

Graylog是一款功能强大,免费而且开源的日志管理和分析工具,可在调试应用程序时监控SSH登录和程序的异常活动。它基于Java,Elasticsearch和M...

804

扫描关注云+社区