Java development notes document
解决的问题
在CMD上运行java文件时出现错误:找不到或者无法加载主类的问题。
解决方案
1. 首先写一个测试文件
public class TestDemo { public static void main(String args[]) { System.out.println("Run successfully!"); } }
2. 通过cmd编译如下
2.1 通过命令:
javac TestDemo.java
将其编译成字节码文件。要运行一段Java源码,必须先将源码转换为class文件,class文件就是编译器编译之后供虚拟机解释执行的二进制字节码文件。
2.2 通过命令:
java TestDemo
将其运行,并打印输出结果。
3. 那么,我们修改刚开始的代码
在首行加入在java中最常见的package关键字。
如下:
package CourseExercise; public class TestDemo { public static void main(String args[]) { System.out.println("Run successfully!"); } }
3.1 通过命令:
javac TestDemo.java
将其编译成字节码文件
3.2 通过命令:
java TestDemo
尝试将其运行,并打印输出结果。
这个时候就会报错了。提示错误:找不到或无法加载主类。很明显,这个错误是由于在代码首行加入了package CourseExercise;造成的。
4. 那么,遇到这种问题该怎么解决呢
方法如下: 4.1 通过命令: javac -d . TestDemo.java
将目标文件编译成class文件。
说明: <mark>-d</mark> :表示生成目录,设置编译生成的class文件保存路径,路径与定义的包名和层次相关。 <mark> . </mark> :表示在当前目录中生成。4.2 通过命令:
java CourseExercise/TestDemo
或者
java CourseExercise.TestDemo
来运行程序。
javap -verbose TestDemo.class
将class文件中的字节码转换为字节码指令。