JDK8
权限问题最好是用系统变量,
建一个 JAVA_HOME 指向jdk根目录
建一个 CLASSPATH 指向jdk两个jar包, 第三个是tomcat的
( 注: 这一步很重要, 为了向下兼容一定要写上, 似乎是jdk11版以上是可以自动找这俩jar包不用写, 但是在低版本是不会自动找的, 会导致在终端中 不识别 javac 命令 )
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%CATALINA_HOME%\lib\servlet-api.jar;
最后就是在path里引用 bin 和 jre 目录
问题
早在第一次接触java的时候就听说了这个说法, 当时也验证了确实是用相对路径后在终端是不识别java命令的, 于是乎人云亦云, 直接把bin目录和引用目录都丢进了path, 有一个能用就成…
但是这样引用路径就算有用也没意义了啊, 直到今天又想起了这个问题, 决定拿出时间一探究竟
将path里的bin目录删了, 重启终端, 凉凉.
打开了 path, 发现是当时用的老师的代码这样两个路径合在一起引用的
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
在这个路径前后都再写上其他程序的路径, 重启终端, 发现都是可以直接运行到, 所以排除了 path环境变量的问题,
问题应该就是出在这里.
为什么这个要合到一块呢? 其他路径都是一个一条的呀?
于是将其拆分为两条路径, java -version, 完美出来了
经过这一番折腾腾, 确定了为了减少不必要的问题, 这种 相对引用路径 的方式 一定不能连到一块儿来写
解决方案
拆分写相对路径, 不要写到一行
上图为正解
附
现在jdk8版本号202之后的也开始面向商业用户收费了, 但是个人学习都是免费的