![](/img/trans.png)
[英]Why do I get a HelpSetException - NoClassDefFoundError when trying to run a Swing desktop application?
[英]Why do I get a NoClassDefFoundError when trying to run my application?
好的,所以我正在制作一个简单的 Java class ,它只会打印出“Hello。”:这是代码:
public class Hello
{
public static void main(String[] args)
{
System.out.println("Hello!");
}
}
我通过命令提示符编译了 class,然后,当我想运行它时,它给了我一个 NoClassDefFoundError 提示类路径有问题。 这真的很愚蠢,因为它是一个类程序。 我尝试了很多东西,但似乎没有任何东西可以解决问题。
我怎样才能解决这个问题?
你还没有展示你是如何运行代码的。 我的猜测是你跑了:
java Hello.class
它试图运行一个名为Hello.class的Hello.class
。 class 刚刚命名为Hello
,因此您需要:
java Hello
如果您还没有设置 CLASSPATH 环境变量,那应该没问题。 否则,将其设置为包含.
或在命令行中指定:
java -cp . Hello
当然,这是假设您首先使用如下命令编译代码:
javac Hello.java
您设置了环境变量 CLASSPATH,但它不包含“。” (点)表示当前目录(默认情况下)。像这样运行:
java -cp . Hello
那是“java space dash cp space dot space Hello”。
一旦你通过“Hello, World”,你会发现设置 class 路径一直都是必要的——无论是像这样手动(很少,在现实世界中)还是在启动脚本、构建工具或 IDE .
使用 CLASSPATH 环境变量是 Java 早期遗留下来的一种不好的做法。 通常,您会发现是 Apple 的 QuickTime 安装程序将其设置为某些内容。 你永远不应该使用或依赖这个变量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.