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

2024年11月16日 12:40
有5个网友回答
网友(1):

//这个问题原因有以下几种,但是和环境变量并没有太大的关系
//能够执行java 和 javac 就证明你的环境变量已经配置好了,其实 classpath 可以不配置
//假如有如下文件:H:\code\Hello.java
public class Hello{
    public static void main(String[]args){
        System.out.println("Hello");
    }
}
//正确编译命令: javac Hello.java
//正确运行命令: java Hello

错误1:H:\code>java Hello.java
错误: 找不到或无法加载主类 Hello.java
原因:命令错误

错误2:H:\code>java Hello.class
错误: 找不到或无法加载主类 Hello.class
原因:命令错误

错误3:java 源文件带有包名,往往容易出错
如:H:\code\Hello2.java
package com.example;

public class Hello2{
    public static void main(String[]args){
        System.out.println("Hello2");
    }
}
这代码看上去没什么问题,执行:
H:\code>javac Hello2.java
H:\code>java Hello2
错误: 找不到或无法加载主类 Hello2

解决办法:
+.删除包名  或者 
+.在code 下创建一个与包名相同的文件结构(H:\code\com\example\Hello2.java)
  编译:H:\code>javac com/example/Hello2.java
  运行:H:\code>java com.example.Hello2

网友(2):

第一,这个程序是没有错。
第二,你的类名是“Test”,但是你的java文件名就应该是“Test.java”。
第三,在运行里输入cmd敲回车建进入一个控制台的命令框,请输入javac回车查看java有没有
安装好,如有问题有两种肯能:一是根本就没有安装java程序或者安装时没有正确安好,
二是环境变量没有配好。
第四,环境变量配置,变量名Path的值应该是:D:\Program Files\Java\jdk1.7.0\bin
把这个路径放最好放到最前面用;号与其它隔开
变量名CLASSPATH的值是 .; 就这样就可以(当然如果你要用到其它jar包就要配置)
变量名JAVA_HOME的值是 D:\Program Files\Java\jdk1.7.0
第五,编译和运行程序,如果你的Test.java放在D盘根目录下,在运行里输入cmd敲回车建进
入一个控制台的命令窗口,敲“D:”回车,输入javac Test.java 回车,再输入java Test 回车。就这样搞定。
最后,我上次碰到一位朋友和你遇到同样的问题,jdk版本和你用的一样,但是我没有用过1.7版本
后来是他加了我的QQ通过远程连接我帮他弄好了,我发现他有这么几个问题:1.存放java的文件夹名有中文(用中文也可以,不过个人认为最好还是用英文命名文件夹名称)。2.他的path变量配置有多个java的路径,而且没有提前。也就是说:path:D:\Program Files\Java\jdk1.7.0\bin;这项放在最前面。3.因为1.7的版本我没有用过所以我叫他换成了1.6的版本(如果你需要我可以发给你)

希望对你有帮助!

网友(3):

执行:java   类名

不是:java   类名.java

例如,我的java文件:

lijian.java

网友(4):

一、环境变量配置是否有问题,运行javac检验一下即可,不报错即为配置正确。
二、用javac命令编译XX.java文件,不报错即为编译成功。这时候在同一文件夹下会产生一个XX.class文件。
三、如果用java命令运行XX.class文件报错:找不到或无法加载主类。原因是运行java命令时,路径未变换到XX.class所在的文件路径下,例如:你的XX.class在F:\盘,这时你应该将命令行的盘符转换到F:\盘,再运行java XX。还有运行class文件时,文件名后面不要带上“.class"。

网友(5):

设置classpath环境变量
可参考
set classpath=.;%java_home%\lib\dt.jar;%java_home%\lib\tools.jar;
java HelloWord

环境变量重新配置