安装JDK: 错误1316.指定的账户已存在
- 引
- 方案尝试
- JDK卸载
- 重装JDK
- 注册表清理
- JDK21
- JDK1.8 解压版
- JDK1.8 8u3xx
引
在执行了某个神秘脚本后,我电脑的很多软件就不可用了,怀疑是注册表被动到了,包括java开发必备的JDK,也无法使用。先前一直使用的是JDK1.8,这个算是最通用的版本之一了,三方软件的兼容性也比较高。但当我选择重装的时候,却弹出了如下警告:错误1316。指定的账户已存在。
初步分析下来,应该是某些注册表被篡改,导致JDK无法使用,但当我使用windows自带的卸载工具去卸载时,还给我报错了。
方案尝试
JDK卸载
尝试几次,都没办法成功,应该是验证未通过。就想着强制卸载。我选择安装了以前比较喜欢使用的Advanced System Care,利用它的卸载组件来卸载掉老的破损的JDK,果然,这种方式是有效的。应该还有很多其它工具也能做的这步的强制卸载,在此不再一一罗列了,毕竟流氓居多。
重装JDK
在卸载掉老的JDK后,我尝试直接重装JDK1.8,却发现仍旧报上面一模一样的错误。
就想着是不是注册表有残余。
注册表清理
想到这一点我是比较后怕的。刚参加工作那会儿,需要安装Oracle,因为刚开始接触,好像是有些配置没设置好还是啥原因,就想着卸载了重装。但卸载又没有走官方推荐的步骤,导致卸载不干净,后面再想重装可就难了。网上删除注册表那一套,其实很多时候都没有效果,并且还有一定的风险。最后只得重装电脑系统,再老老实实按照步骤安装了一次。
关于JDK重装报这个错误,我也上网查了一下,提供的方法都试了一遍,但每一个奏效的,换句话讲,每一个适合我这种情况的。
另外,我也尝试使用Advanced System Care提供的注册表清理和整理工具进行修复,也未能奏效。
JDK21
既然JDK1.8不让装,就想着是不是能安装一个更高阶的版本呢?我上Oracle官网下载了最新版的JDK21安装版,一顿下一步后,有惊无险的安装成功了。
JDK1.8 解压版
其实在这之前,我还想到了可以使用JDK1.8的解压缩版,这个也是可以奏效的。下载,解压,修改环境变量,CMD java -version测试,没问题,很nice。
为啥又装了JDK21呢?因为想着尝尝鲜,安装了最新版的IDEA,该版本已经不支持JDK1.8了。
但最新版的IDE带来的不光是一个JDK升级的问题,包括Maven,项目中的依赖版本都有涉及到版本升级。考虑到这不是一个0到1的项目,想了想还是放弃了,回退了我的IDE版本,挺好。
至此也提醒自己和大家,版本不是越新越好的,软件都有个兼容性问题需要考量。想想,JDK1.8为何流行了这么多年?应该就好很理解了。
JDK1.8 8u3xx
因为使用JDK解压缩版,有的java应用出了点问题,就怀疑是不是解压缩版没有安装版通用。灵光一闪,要不换个JDK1.8版本试试,安装版的JDK1.8后面都有一个小版本,比如下面这个是我从Oracle官网下载的最新版
而这,是我在其他网站上找到的JDK1.8更早的版本
所以官方最新的应该是jdk8_8u331,也能找到稍微早一些的版本。而只要安装version不同版本的JDK1.8是可以成功的,也算是一种有效的解决方案吧。
当然,后面证明我的其他java应用出问题跟解压缩版没啥关系。