背景:
我电脑上之前安好了java19,因为一些原因要下java1.8,发现可以设置计算机里的多个jdk版本,于是兴冲冲的开始了,网上的教程很详细,我也不啰嗦。前面进行的一切顺利,但是我始终无法切换对应的版本号,一直是原来的java19,后面找到了方案。
问题细节:
网上告诉我在环境变量里应该有
C:\Program Files\Common Files\Oracle\Java\javapath
这个东西,但是我并没有(java程序正常运行,且使用 where java 代码查看 第一个就是上述路径)如下图:
所以我即使把 %JAVA_HOME%\bin 移动到最上面也无济于事(っ °Д °;)っ
java -version 永远都是 19~
解决方案:
按前辈所言系统按顺序找java可执行程序,因为
C:\Program Files\Common Files\Oracle\Java\javapath
这个路径的优先级比咱们JAVA_HOME的高,所以系统先找该路径下有没有符合java条件的
一看,哎,有的
所以我们把该路径下的文件移除,按照优先级的规则会依次查找,这样就会在我们设置的路径下查找了!理论上是可行(实际上也可行)
擦屁股:
不知道为什么弄好后 javac java 编译java程序会报错:
因为编码不知为啥出了问题
查阅后使用如下代码指定编码方式即可
javac -encoding UTF-8 xxx.java