javac编译成功,用java运行class文件出现“找不到或无法加载主类” 的问题

javac编译成功,用java运行class文件出现“找不到或无法加载主类” 的问题所在很简单

   学习android,顺便又学习下java.

   入门就遇到这样的问题,环境变量按网上说的配好了,直接java 和 javac都有提示出来,说明没问题了,

做了一个简单java,放在e盘根目录下,在c:下操作javac该java文件成功了,但用java 该class时却提示“找不到或无法加载主类” ,忙活了半天,找了些资料,发现其实很简单,不是语句错误,是路径问题classpath的问题。

    主要是以下两点要注意:

    1、在classpath的最前面要加一个本目录路径,用.表示,由于后面还有java的dt和tools两个路径,所以.后要加;进行分隔表示。   

   2、更为重要的是,在cmd下运行javac 和java的时候,必须在该java文件的目录下运行,这样生成的class也在该目录下,java的时候也会第一个就在本目录下找class文件,就不 会提示找不到了。这个cmd运行路径由于一般不太注意,输入cmd就会直接到c:\个人文件夹下,而一般的java文件会用其它软件编写,放在选定的路径 下,这两个路径很少能主动重合,一运行当然找不到了,但是javac能认到,不知为什么java就提示找不到?这点有点奇怪。网上各种解决方法里很少注意 到其实就是这个小问题造成的找不到类,都想当然的以为是在java源文件路径下运行java,那当然就找不到基本问题所在了。

    如果1、2都做了还是没变化,那就是该计算机改了环境变量后需要重新启动下让新的设置生效,重启下即可。

    解决了以上两点,就不会再提示“找不到或无法加载主类” 


你可能感兴趣的:(javac编译成功,用java运行class文件出现“找不到或无法加载主类” 的问题)