gpt4 book ai didi

java - 从命令行运行 Java 程序

转载 作者:行者123 更新时间:2023-12-02 09:43:44 31 4
gpt4 key购买 nike

所以我在这里遇到了一个菜鸟时刻,我以前从未使用过命令行来运行java程序,但我现在需要。我遇到的问题是,当我尝试运行该程序时,出现 ClassNotFoundException。我的类(class)名为 OmadUpdate。我已经使用 javac 命令将 OmadUpdate.java 文件编译为 OmadUpdate.class。我已经检查了目录,它们肯定都在那里,但是当我运行 java OmadUpdate 命令时,它给我一条错误消息:

Exception in thread "main" java.lang.NoClassDefFoundError: OmadUpdate (wrong name:     org/openmetadata/main/OmadUpdate)
......
......
Could not find the main class: OmadUpdate. Program will exit

但它就在目录中。当我输入 dir 时,我同时拥有 OmadUpdate.class 和 OmadUpdate.java。我什至尝试使用“java org.openmetadata.main.OmadUpdate”,因为这是它所在的包名称。我很困惑。感谢您的帮助。

最佳答案

您的类似乎已在 org.openmetadata.main 包中声明。

为了让 java 正确加载类,它需要位于与包结构匹配的正确目录结构中。

因此,org.openmetadata.main.OmadUpdate 的类文件应位于 org\openmetadata\main 目录中。

然后,当您运行 java 命令时,此目录结构的根应该位于类路径上 - 对于一个简单的示例,这仅意味着您当前的目录应该是 的父目录>org\openmetadata\main.

运行java时,您需要使用句点而不是斜杠指定完整的类名,即

java org.openmetadata.main.OmadUpdate

关于java - 从命令行运行 Java 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9879679/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com