Java命令报错——找不到或无法加载主类

Javac命令

javac命令,编译源文件.java,产生二进制.class文件。这个命令是有javac编译器实现的,执行时会去查找类。我们都会在环境变量中设置classpath,这个类路径就是javac命令查找文件的顺序。

例如classpath设置为:

 $JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.(针对Mac中的)。

那么javac命令时,首先查找当前目录,如果没有类文件,则查找第二个路径,以此类推知道找到,否则报编译错误。javac命令查找类路径是以文件分隔符”/”查找的。

Java命令

java命令,执行二进制class文件。该命令是java解释器命令,执行java命令也是同样会去查找类路径。先查找当前目录下的包路径,查看是否有该类,如果没有查找%JAVA_HOME%/lib/包路径下有无该类,其次查找%JAVA_HOME%/lib/tools.jar/包路径下有无该类。java命令加载类路径(包路径)是通过“.”或者“/”来作为分隔符的

猜你喜欢

转载自blog.csdn.net/qq_33704186/article/details/84503598