现象
执行java Test命令时报错找不到或无法加载主类。
- 第一种
- 第二种
原因
- 环境变量没有把当前路径(.代表当前路径)加进去。
- java命令执行时package指定的包路径没写。
解决方法
- java执行class文件是根据CLASSPATH指定的地方来找,不是我们理解当前目录。
如果希望它查询当前目录,需要在CLASSPATH中加入“.;”,代表当前目录。
比如CLASSPATH:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
然后重启cmd命令行,再执行就可以了。
- java执行class文件对package的路径是强依赖的。
它在执行的时候会严格以当前用户路径为基础,按照package指定的包路径转化为文件路径去搜索class文件。
所以返回package指定的包路径的上一层路径去执行,就不会报错了。