【问题标题】:Java command working on VSCode terminal, but no external terminal on macJava命令在VSCode终端上工作,但在mac上没有外部终端
【发布时间】:2020-08-18 19:37:09
【问题描述】:

当我在 Mac 上使用单个 java 文件转到文件夹并运行 javac HelloWorld.java 时,该类可以正确编译,但是使用 java 命令运行它时,我收到以下错误:

Error: Could not find or load main class main
Caused by: java.lang.ClassNotFoundException: main

但是,在 VSCode 终端中,相同的命令可以工作并运行程序。我做错了什么?

java版本:"14.0.1", 2020-04-14

【问题讨论】:

  • 如何运行java 命令?确保提供已编译文件的完全限定名称(包括软件包),并且在 java ClassName 命令中不包括 .class 扩展名。
  • 是的,我检查了所有名称和语法,但仍然遇到同样的错误
  • 如果没有 .class 扩展名,您不可能检查并提供正确的 Fully Qualified Name,并且它不会运行,当然,考虑到您有public static void main(String[] args) {} 主类中的方法。
  • 你能把你使用的java命令和HelloWorld.java的代码贴出来吗?

标签: java visual-studio-code


【解决方案1】:

这是不可能的。如您所述,您的 java 文件名为“HelloWorld.java”,您通过命令“javac HelloWorld.java”编译它。但是错误信息显示:

Error: Could not find or load main class main
Caused by: java.lang.ClassNotFoundException: main

这意味着 java 解释器正在寻找一个名为“main”的类,而不是“HelloWorld”。那么你有令牌的命令是什么?如果您使用命令 'java HelloWorld' 并且 java 解释器找不到 'HelloWorld' 类,您应该会收到以下错误消息:

Error: Could not find or load main class HelloWorld
Caused by: java.lang.ClassNotFoundException: HelloWorld

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-12-03
    • 1970-01-01
    • 1970-01-01
    • 2015-08-28
    • 2021-02-17
    • 2016-09-09
    • 2020-10-01
    • 2021-10-05
    相关资源
    最近更新 更多