Java &引用;你好,世界"E;”无法找到或加载主类

Java &引用;你好,世界"E;”无法找到或加载主类,java,Java,计算机操作系统:Windows 7 语言:Java 很久以前,我使用java,运行hello world程序时遇到问题: public class Hello { public static void main (String args[]) { System.out.println ("Hello World!"); } } 我将此代码保存在Hello.java文件中,然后使用cmd编译: C:\Users\XYZ\Desktop>java

计算机操作系统:Windows 7 语言:Java

很久以前,我使用java,运行hello world程序时遇到问题:

public class Hello 
{
    public static void main (String args[]) 
    {
         System.out.println ("Hello World!");
    }
}
我将此代码保存在Hello.java文件中,然后使用cmd编译:

C:\Users\XYZ\Desktop>javac -version
javac 1.6.0

C:\Users\XYZ\Desktop>javac Hello.java

C:\Users\XYZ\Desktop>java Hello
Error: Could not find or load main class Hello

C:\Users\XYZ\Desktop>  
你能解释一下为什么会抛出上面的错误消息吗

试试看

java -cp . Hello
我想你的类路径上没有当前目录

试试这个:

java -cp . Hello
程序末尾缺少一个“}”

public class Hello 
{
    public static void main (String args[]) 
    {
       System.out.println ("Hello World!");
    }
}
然后试试看

java -cp . Hello
设法除去

package package.path;

希望这能对您有所帮助。

我遇到了完全相同的错误,我已经改变了我的HelloWorld.java文件和用javac创建的HelloWorld.class文件所在的目录

我首先尝试了所有不同的方法来强制类路径,但没有成功

我所了解的两个目录之间的唯一区别是,第一个目录的路径中的目录名中包含空格。我需要进一步调查

我不知道为什么我的javac可以在两个目录中工作,但是java不能


编辑:我现在在第一个目录中再次尝试,效果很好。不知道为什么它以前不工作,现在无法重复错误。

我和你有同样的问题。我解决问题的方法是删除包声明。

删除包声明并重新运行


javacmyprogram.java

这可能会帮助那些拥有像Java1.8.0\u201这样的最新版本的人

在环境变量中正确设置类路径

JAVA_HOME=C:\ProgramFiles\JAVA\jdk1.8.0_201
CLASSPATH=%JAVA\u HOME%\lib

将此JAVA\u HOME追加到PATH环境变量中

注意:

请记住将放在lib文件夹之后,以加载CLASSPATH变量中的所有类。

我遇到了与您相同的问题。 我使用eclipse编写JAVA代码。当我创建一个新的JAVA项目时,我通过选择项目布局的默认选项“为源和类文件创建单独的文件夹”来解决这个问题。 当我选择“使用项目文件夹作为源和类文件的根目录”时,会出现问题
“javac”不被识别为内部或外部命令, 可操作程序或批处理文件。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。错误输出

Path是一个环境变量,用于访问java二进制文件,如用于运行java程序和编译java源文件的java或javac。路径可以被Java设置覆盖。操作系统使用Path查找shell中键入的任何二进制文件或命令

用于设置路径的命令:-在窗口10环境变量中输入以下内容

设置路径=%PATH%;C:\ProgramFiles\Java\JDK1.8.0\U 121\bin

错误:无法找到或加载主类HelloWorld错误输出

请尝试此操作以更正错误


java-cp。HelloWorld

在命令提示符下正确设置类路径和类

请按照以下步骤操作:

  • 在命令提示符下,复制jdk->bin路径,如下所示:
    C:\Users\SP\Desktop\Java>set class=“C:\Program Files\Java\jdk1.8.0\u 73\lib”

  • 然后复制jre->lib路径,并在cmd提示符下使用
    \rt.jar
    通过它,如下所示:
    C:\Users\SP\Desktop\Java>set classpath=“C:\Program Files\Java\jre1.8.0\u 201\lib\rt.jar”

  • 完成上述更改后,尝试使用
    javac HelloWorld.java运行程序
    
    &
    java HelloWorld
    命令。

    运行
    dir
    命令。你看到那里有
    Hello.class
    吗?如果是,您的
    Hello.java
    文件中是否有任何包声明?您是否在桌面上看到名为“Hello.class”的文件?您缺少一个正确的
    }
    。或者这仅仅是StackOverflow的C&P错误?是的,Hello.java类是在javacAs之后创建的。旁白:您应该从java 6开始—它不再受到官方支持。我在发布时错过了这个大括号,这段代码正在编译,但没有运行.java-cp。您好,它工作了,您能告诉我为什么它不能使用“java Hello”命令工作吗?我记得以前我使用java“ClassName”运行它@yogeshkmrsoni@yogeshkmrsoni好的,如果它能用这个,然后您应该更改
    类路径
    环境变量,使其包含
    。•如果未找到类路径环境变量,则当前文件夹(“.”)将由default@RClaven-否决这个答案(几乎可以肯定是正确的)因为它不能让你的代码工作,这有点不公平。我的类文件在项目的bin文件夹中,所以,
    java-cp./bin Hello
    为我工作。