java找不到或无法加载主类

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java找不到或无法加载主类相关的知识,希望对你有一定的参考价值。

Java和javac都正常,这个是什么原因啊?jdk和jre也是两个分开的文件夹,求大神帮助啊

运行java类文件,出现找不到或无法加载主类,
最大可能性是你的主类的包或者类路径没有设正确
看看你的类路径和classpath变量,如果不包含你的主类所在的路径或者包,请使用java的-D参数设置追问

JAVA_HOME E:\java\jdk1.8.0_60
CLASSPATH .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
path .;%JAVA_HOME%\bin;
帮我看看这个变量有没问题啊
那个类路径要怎么弄啊?

参考技术A 回答

你好

1.首先我们先建一个java文件,写入如下图所示的代码2.接着打开CMD命令界面,用javac命令编译一下java文件3.接着用java命令执行一下编译后的内容,这个时候就报出了找不到或无法加载主类这个问题4.接下来我们将代码中的顶部package内容去掉,如下图所示5.在重新编译执行代码,这个时候就通过了,如下图所示6.最后你还可以将package包创建出来,将java文件放进去也可以

提问

没看懂,我cmd java可以运行, javac报错找不到或无法加载主类

回答

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

最容易因为大意出错的地方就是你java后面加了.class后缀原因是你java后tab键是默认给你加后缀的,所以建议最先检查下:(1)javac后文件加后缀.java例如 javac main.java(2)java后不加后缀.class 例如 Java main

在classpath的最前面要加一个本目录路径,用.表示,由于后面还有java的dt和tools两个路径,所以.后要加;进行分隔表示。例如:.;D:\\Java\\jdk1.8.0_11\\lib\\tools.jar;D:\\Java\\jdk1.8.0_11\\lib\\dt.jar 特别注意路径最前面的>>>>>.;<<<<<<即加粗部分其他也就是path和JAVA_HOME设置:JAVA_HOME:D:\\Java\\jdk1.8.0_11;Path:%JAVA_HOME%\\bin;%JAVA_HOME%\\jre\\bin;(注:设了JAVA_HOME后,CLASSPATH可以改成:对照上例:.;%JAVA_HOME%\\lib \\tools.jar;%JAVA_HOME%\\lib\\tools.jar)

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

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

如何解决Eclipse下“找不到或无法加载主类”的错误

Eclipse出现“找不到或无法加载主类”的原因是系统错误导致的,具体解决方法步骤如下:

1、首先打开计算机,检查代码,代码要有main并且不能写错,System首字母要大写,大写的注意:图中红线画出的package aaa应该去掉  (图示代码是从eclipse直接复制过来的代码)。

2、注意文件名最好与类名相同,如图类名是AAA,就另存文件名为AAA.java,如图颜色画出部分相同,点击保存。

3、Win+R——输入cmd回车——输入h:(切换到保存AAA.java文件的h盘)回车——javac AAA.java 回车(窗口抖一下,生成.class文件)。

4、java AAA 回车,命令提示符就会出现hello world。(注意不要加.class,如图运行加.class会报错)。

参考技术A

如何解决Eclipse下“找不到或无法加载主类”的错误是系统错误造成的,解决方法为:

1、新建文档文档,在文本文档中输入以下代码public class MyTest public static void main(String[] args) System.out.println("test");。

2、将文本文档,改成【MyTest.java】。

3、【javac MyTest.java】编译源文件。

4、运行的时候,不能带【.class后缀】。

5、修改方法,去掉后缀,即可运行。

6、运行的时候,找到主类。


参考技术B

今天启动项目,又遇到找不到或无法加载主类的情况,清除项目后无法编译,class文件下没有.class文件,至少遇到3次这个问题了,隔一段时间就出现这个问题,而且每次解决的方法都还不相同,这个问题的标识就是项目上有红色差号或者叹号,原因诸多也说不清楚,有的时候是jar包缺或者引入了无用的jar包,有时候开发软件编译停顿了反应慢等等,今天特意总结解决此问题的方法,和大家分享一下:


1、在src文件夹上点右键-Build Path-Use as Source Folder,重新进行编译,一切正常了。

2、在Eclipse工程文件夹上点右键-Refresh,重新编译,一功OK(这个方法一般不起作用)。

3、右键Properties在Java Builder Path的Libraries的标签里面看是否有缺少或者无用的(一般带红差头)的,引入对应的jar包或者删除掉。

4、在Properties里面设置Source.添加你的java路径.比如src,然后需要设置下面的Default output folder,这里设置你的输出路径也就是class路径了。

5、右键Properties在里面的builder里面把项目的builder.xml引用(import)进来。

6、把右键Properties在Java Builder Path的Libraries全部删除,尤其是jre,然后,点击保存,关闭eclipse,然后再打开,再把对应的jre和lib下边的相关jar引进来,保存,重新编译后就好了,我也不知道为啥,有一次我就这么弄好了。

7、把class下边的有.class文件的话还是这样,把这些.class文件删除掉,然后elipse中菜单project—clear然后选中对应项目,在project菜单下边勾上Build Automaticlly(自动部署),然后生成新的就class文件就OK了。

8、把项目下边的.project删除掉,从同事身边运行正常的项目下边拷贝过来它的.project文件,刷新项目试试。

9、把项目下边的.classpath删除掉,从同事身边运行正常的项目下边拷贝过来它的.classpath文件,刷新项目试试。

10、终极解决办法,也是很管用的解决办法,就是把整个项目删除掉,删除之前把更改的内容提交到CVS或者SVN上,然后重新从SVN或者CVS上把项目档下来。

本回答被提问者采纳

以上是关于java找不到或无法加载主类的主要内容,如果未能解决你的问题,请参考以下文章

Java 错误:找不到或无法加载主类

java运行显示“找不到或无法加载主类

手动启动tomcat错误: 找不到或无法加载主类

java运行显示“找不到或无法加载主类”!

错误: 找不到或无法加载主类 Examplel

java中无法加载或找不到主类