0

由于我是 Java 新手,我有一个问题。如标题所述,我在 VirtualBox 上运行 Ubuntu 服务器,但在使用 package.json 运行一个非常简单的类时遇到问题。

我给你代码:

package world;

public class HelloWorld{

public static void main (String[] args){

System.out.println("Hello World")
}
}

确实非常简单的代码。用 编译后javac HelloWorld.java,没有错误(现在可以找到什么错误),

  • 运行java HelloWorld,给我消息 NoClassDefFoundError
  • 运行java world.HelloWorld返回无法找到或加载主类。

我怀疑它与 classpath 有关,但我找不到答案。

4

1 回答 1

1

这是一个类路径问题。您可能可以通过查看CLASSPATH环境变量来检查您的类路径是什么。您可以尝试将您的类文件所在的目录添加到此 CLASSPATH 的末尾,但最简单的方法可能如下。

确保该HelloWorld.java文件位于名为 的目录world中,您可以编译如下:

javac world/HelloWorld.java

HelloWorld.class这将在世界目录中创建一个文件。然后你可以尝试运行

java world.HelloWorld

或者

java -classpath . world.HelloWorld

从同一个地方。

您还可以使用-d带有 javac 的标志将类文件放在不同的位置,而不是源(.java 文件)所在的位置。

于 2012-07-09T08:34:52.157 回答