为了账号安全,请及时绑定邮箱和手机立即绑定

在不编译的情况下运行 Java 程序

在不编译的情况下运行 Java 程序

慕神8447489 2022-06-04 14:57:58
Main.java最近,我安装了 Java 11。在编码时,不小心,我没有用编译javac Main.java,而是写了java Main.java. 它没有向我显示任何错误,并且没有任何问题。为什么会这样?这是 Java 较新版本中的新功能吗?内容Main.java:public class Main {    public static void main(String[] args) {        System.out.println("Hello, World!");    }}在 Java 8 中运行:java version "1.8.0_112"Java(TM) SE Runtime Environment (build 1.8.0_112-b16)Java HotSpot(TM) 64-Bit Server VM (build 25.112-b16, mixed mode)>>> java Main.javaError: Could not find or load main class Main.java在 Java 11 中运行:java version "11.0.1" 2018-10-16 LTSJava(TM) SE Runtime Environment 18.9 (build 11.0.1+13-LTS)Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.1+13-LTS, mixed mode)>>> java Main.javaHello, World!
查看完整描述

1 回答

?
慕容708150

TA贡献1831条经验 获得超4个赞

此功能是作为 JEP 330 的一部分引入的:启动单文件源代码程序。

在源文件模式下,效果就像将源文件编译到内存中,并执行在源文件中找到的第一个类。例如,如果一个名为 HelloWorld.java 的文件包含一个名为 hello.World 的类,那么命令

java HelloWorld.java 非正式地等价于

javac -d HelloWorld.java java -cp hello.World

这是JEP


查看完整回答
反对 回复 2022-06-04
  • 1 回答
  • 0 关注
  • 156 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信