刚开始在命令行模式下用java时,总是出现了这个 "错误:找不到或无法加载主类"
真的是蛋疼,找不到错误,后来在网上查了半天也没怎么找到,这里贴上可能出现的问题
1. 环境变量没有配置好
这个原因在网上出现的最多的,但是往往是出现问题后第一个查找的地方,可惜也没什么卵用,
环境变量对着配置了以便又一遍,java -version,javac -version 也都是对的,就是解决不了
2. jdk 和 jre 不能装装在同一目录下
这个问题是有个能出现的
3. 我出问题的地方来了,java HelloWorld.class
当我写好一个测试的程序之后,用 javac 来编译是没什么错误的,生成了类文件
后来用 java HelloWorld.class 时就出现如题的错误,真是百思不得其解,后来用如下命令
java HelloWorld
居然可以运行了,得出的结论是不能带后缀名,至于为什么还没搞懂
4. 程序出问题
上述几个出错的点都不是程序错误,如果程序没写好也是有可能报这个错的
比如主类名和文件名不一致,main 函数没有或者有问题
java HelloWorld 背后的逻辑
现在(2019-07-03 23:25)我知道,Java 在执行 main 方法之前会进行类加载。
那么 java 命令的执行逻辑是什么样的呢?