JDK覆盖问题

原文:https://blog.csdn.net/just_coming_here/article/details/51775909   

一次心血来潮,决心研究一下,电脑上面安装3个版本的JDK,于是开始了测试,其实也不能说是安装3个版本的,1.6版本的是公司给的压缩包形式的,1.7和1.8版本的是我自己在电脑上面安装的,首先遇到的问题就是,当1.7安装好以后,(1.7的安装的环境变量配置自行百度吧)我是用cmd查看java -version,    首先说明,我的Path路径设置的是1.6版本的。

遇到上面的问题,有的人可能会疑惑,为什么我配置的1.6,在我没安装1.7版本的时候,我设置path是1.6,java -version它显示的是1.6。当我安装了1.7 它显示的是1.7。这个问题,需要清楚的知道一个编译和运行时他们是不一样的,这个问题,后面讲述。

当我安装1.8版本的时候,安装成功了,再次使用java -version 的时候出现了下面的情况

上面的问题的大概意思就是,我需要的是1.7,你现有的是1.8,然后计算机就懵逼了,不知道怎么搞了。

遇到这个问题,我们需要清楚一个事情,在cmd下运行java命令时,系统首先会去windows的System32文件夹下去找java.exe如果找到就运行,这里其实和注册表也是有关系的,(我的注册表写的是1.8但是system32下面还是1.7的java.exe,然后它提示注册表那里有问题,);然后再根据配置的java环境变量去找,找到即运行。如果经过这2步还没找到就会提示最常见的一个错误提示:xxxx 不是内部或外部命令,也不是可运行的程序或批处理文件。这时候应该看看这两个地方,一般是path的问题。

出现上面的问题后,我就到system32下面把java.exe,javaw.exe以及javaws.exe删除了,然后又把自己安装的1.8JDK的这三个程序放到system32下面

放完以后再次打开cmd 运行 java -version 出现了最终的结果。

       在这个问题的背后,我们需要知道的是,我们的path设置的JDK路径到底有什么用,我们配置的是运行环境,而实际上编译的时候会走system32下面的java.exe去编译,系统默认的是走system32下面的东西。

     我们使用eclipse,myeclipse的时候,eclipse默认使用path里面的运行,使用默认的system32里面的程序去编译,当path路径和system32里面(也就是注册表,前提是你的注册表和system32里面的版本相对应)不一样的时候,eclipse就会报错,code=13这个错误,绝决办法就是,把你的path里面的javahome路径清除,eclipse会自动寻找注册表里面的运行环境。myeclipse默认使用自带的,我们可以自己修改。我们通常听到的修改jdk,其实就是指定它的运行和编译。由于目前知识有限,有不对的地方欢迎指正。

原文:https://blog.csdn.net/just_coming_here/article/details/51775909

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用命令行将 Java 版本升级的步骤: 1. 在浏览器中访问 Oracle 官网 https://www.oracle.com/java/technologies/javase-downloads.html ,下载你需要的 Java 版本。选择适合你操作系统的版本,并下载对应的安装包。 2. 安装 Java。如果你已经安装了旧版本的 Java,可以选择覆盖安装,或者在安装时选择新的安装路径。在安装过程中,按照提示一步一步进行安装。 3. 配置环境变量。打开命令行终端(Windows 用户可以按下 Win+R 键,输入 cmd 后回车),输入命令 `java -version`,查看当前的 Java 版本号。如果你已经安装了新的 Java 版本,但命令行中仍然显示旧版本,需要配置环境变量。 - Windows 系统:打开“控制面板” > “系统和安全” > “系统” > “高级系统设置” > “环境变量”,在“系统变量”中添加 JAVA_HOME 变量,并将其值设置为 Java 安装路径,例如 `C:\Program Files\Java\jdk-16.0.1`。然后在“Path”变量中添加 Java 的 bin 目录,例如 `%JAVA_HOME%\bin`。 - macOS 和 Linux 系统:打开命令行终端,编辑 `.bash_profile` 或 `.bashrc` 文件,添加以下内容: ``` export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-16.0.1.jdk/Contents/Home export PATH=$JAVA_HOME/bin:$PATH ``` 4. 重启命令行终端,输入命令 `java -version`,查看 Java 版本号是否已经更新。 需要注意的是,升级 Java 版本可能会影响已有的应用程序和系统功能,建议在升级前备份重要的数据和文件,并仔细阅读安装说明和版本更新说明。同时,如果你不确定如何升级 Java 版本,建议查看 Java 官网提供的升级指南或者向 Java 官方支持寻求帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值