今天在自己电脑上装java ,遇到如下问题:
1.首先装JDK1.6,安装后cmd中输入java,能识别,输入javac,显示Exception in thread "main" java.lang.NoClassDefFoundE
原因是缺少tools.jar包,而之所以缺少tools.jar包,是因为安装的时候两次安装目录选择的是同一个,导致了覆盖丢失。所以安装的时候JDK和JRE要分别安装在不同的目录下。
2.后来装JDK1.7,配置好用户变量PATH后(1.5以后的版本只需配置PATH),CMD中JAVA 和JAVAC都无用了。
后来发现原来是JDK1.8没有卸载,导致了系统变量PATH识别到了JDK1.8的java,(系统变量的搜索优先级高于用户变量,一旦系统变量搜索到了java就会停止搜索),但是由于安装目录已经删除,命令无法执行,于是卸载掉JDK1.8,果然,JAVA命令有用了。但是javac仍然无用。于是猜测是因为jdk1.6没有卸载干净。
3.jdk1.6的安装包出现问题,导致无法完全卸载,于是用windows工具windows install clean up 来卸载,很快就卸载了。但是卸载后发现Javac仍然无用,于是重启cmd,重启后javac有用了。