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

即使设置了路径,Java也没有在cmd和ide上运行,java,Java,因此,我以前只使用过python,并决定学习java作为我的第二语言。我安装了jdk(jdk-14.0.1)和jre(jre1.8.0û251)文件。现在我将路径添加为C:\Program files\java\jre1.8.0û251\bin。现在,当我在cmd提示符下运行java,我得到了一个大的文件,我认为这是成功添加路径的证明 但当我在atom上运行代码时(是的,我在atom中将文件格式设置为java),我仍然会遇到以下错误: 基于选择的runner不适用于Java。 现在,我还在记事本

因此,我以前只使用过python,并决定学习java作为我的第二语言。我安装了jdk(
jdk-14.0.1
)和jre(
jre1.8.0û251
)文件。现在我将路径添加为
C:\Program files\java\jre1.8.0û251\bin
。现在,当我在cmd提示符下运行
java
,我得到了一个大的文件,我认为这是成功添加路径的证明

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

基于选择的runner不适用于Java。

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

class MyClass {
    public static void main(String[ ] args) {
        System.out.println("Hello World");
    }
}
当我在cmd提示符下运行它时,就像:

javac test.java
然后

java测试

我收到
错误:找不到或加载主类测试


我做错了什么

MyClass
应该和类名一样位于文件
MyClass.java
中。然后你可以做:
javacmyclass.java


javamyclass

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

将其定义为
公共类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

希望这有帮助。切士

您的类名应与文件名相同



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

这是否回答了您的问题@NeerajBansal我猜他的问题也与atom应用程序有关,该链接:不合理。我尝试过,但似乎出现了以下错误:
错误:发生了JNI错误,请检查您的安装并重试线程“main”中的异常java.lang.UnsupportedClassVersionError:MyClass已由java运行时的最新版本(类文件版本58.0)编译,此版本的java运行时仅识别52.0以下的类文件版本,因此我应该下载另一版本的jre?或以建议的方式编译代码,如果你不想下载。这有助于我在atom上运行我的代码,因为它显示的
基于选择的runner不适用于Java。
将文件名更改为
MyClass
也适用于atom。但是我如何在不保存的情况下执行相同的操作,因为在python中,我不必保存文件,只需将格式从普通文件更改为python。这在JAVA中不起作用吗?首先将要运行的文件保存为适当的格式,然后尝试运行它,应该可以。