java 文件在 cmd 中工作,但当使用 .jar 扩展重命名时 returns 出错

java file works in cmd but when renamed with .jar extension returns an error

几天前我在 Java 开始编程,当我发现这个奇怪的事情时,如果我编写一个 Java 文件并将其扩展名保持为 .java,那么文件通过键入 start java.java 在 cmd 中工作。但是,当我在 cmd 中将文件重命名为 .jar 扩展名和 运行 时,它无法加载文件。双击它说损坏的文件。我不使用 IntelliJ 或 Eclipse,我使用 Sublime 文本编辑器编写代码并在 cmd 中执行它。有谁知道为什么会这样?我试图通过在 Sublime 中使用 ctrl+b 快捷方式来构建代码,但它没有用。怎么办?

在将文件重命名为 .jar 扩展名后尝试在 cmd 中 运行 一个 java 文件会出现此错误:

Picked up _JAVA_OPTIONS: -Xmx256M
Error: Could not find or load main class testing.jar
Caused by: java.lang.ClassNotFoundException: testing.jar

您不能只更改文件的扩展名就认为它会起作用。通过 cmd 启动 .java 文件与双击 .jar 文件不同。要获得有效的 java 存档,您需要使用 IDE 或 CLI 工具将其捆绑到一个。

看看here。 您应该调用 javac 来编译您的 java 文件,然后在生成的 .class 文件

上使用 jar 命令创建一个 jar