Java教程——CMD手动编译运行失败原因(高手略过)
(仅对新手,高手略过)在学习Java初期,我们在利用cmd手动编译java程序的时候,会遇到编译成功,但运行却总是提示失败。已经排除了java配置环境的问题,Path和ClassPath以及%JAVA_HOME的路径设置都没问题,编译和运行的文件名大小写都没问题。那么原因在哪呢?见下面简要分析。如下图
源代码如下:
1 package lee; 2 public class Hello 3 { 4 public static void main(String[] args) 5 { 6 System.out.println(“HelloWorld!”); 7 } 8 }
对于新手我们还没有package包的概念,但我们会一股脑的在程序开始部分敲下package lee;
这次错误的原因就在这里,我们的Hello类是在存放在包lee下面的,所以我们编译后的Hello.class类应该存放在lee文件夹下,但是一般我们在练习的时候,往往直接编译保存在同一目录下,从而导致运行时提示“找不到或无法加载主类 Hello”。
解决办法:
方法一:删除源代码中的package lee;这一行。
方法二:将生成的Hello.class文件放到lee文件夹下。
更改后,运行正常。