即使设置了PATH,Java也没有在cmd和ide上运行



所以我以前只使用过python,并决定学习java作为我的第二语言。我已经安装了jdk(jdk-14.0.1(和jre(jre1.8.0_251(两个文件。现在我将PATH添加为C:Program FilesJavajre1.8.0_251bin。现在,当我在cmd提示符下运行java时,我得到了一个很大的文档,我认为这是成功添加PATH的证明。

但当我在atom上运行代码时(是的,我已经在atom中将文件格式设置为java(,我仍然会收到以下错误:

Selection Based runner not available for Java.

现在我还在记事本中创建了一个测试文件:

class MyClass {
public static void main(String[ ] args) {
System.out.println("Hello World");
}
}

当我在cmd提示符下运行它时,比如:

javac test.java然后

java test

我得了Error: Could not find or load main class test

我做错了什么

MyClass应位于与类名相同的文件MyClass.java中。然后您可以执行:
javac MyClass.java
java MyClass

将其定义为public class MyClass

那么你会得到的异常

错误:无法找到或加载主类
原因是:java.lang.ClassNotFoundException

它说明了类和文件中名称的差异,并且可以解决通过重命名其中任何一个。

对于您的另一个问题,UnsupportedClassVersionError,以下是兼容性列表:

报告的主要数字是:

Java SE 14 = 58,
Java SE 13 = 57,
Java SE 12 = 56,
Java SE 11 = 55,
Java SE 10 = 54,
Java SE 9 = 53,
Java SE 8 = 52,
Java SE 7 = 51,
Java SE 6.0 = 50,
Java SE 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45

为了生成与Java 1.4兼容的类文件,请使用以下命令行:

javac -target 1.4 HelloWorld.java

希望这能有所帮助。骗子!!!

类和文件的名称应该相同。将test.java更改为MyClass.java。此外,您应该确保JDK和JRE的版本相同。例如,您有JDK14和JRE 8。您应该拥有JDK 14和JRE 14,或者JDK 8和JRE 8。

您的类名应与文件名相同


要编译Java代码,文件的扩展名必须为.Java。文件名必须与类名匹配。Java不要求类是公共的

最新更新