0

所以我从字面上介绍了 Java 编程,现在我正在尝试创建我的第二个作业。这样做后,我在 eclipse 中创建了新的 java 类,但是当我尝试运行我编写的代码时,出现以下错误。

我不确定如何解决这个问题。任何帮助将不胜感激。

Exception in thread "main" java.lang.NoClassDefFoundError: math
Caused by: java.lang.ClassNotFoundException: math
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
4

4 回答 4

1

ClassNotFoundException: math 我猜你在数学中创建了一个大写 M 的类,但是当你在某个地方调用它时,它没有大写,也没有正确引用。尝试在您的代码中仔细检查。对正确的 Java 标准友好的 FYI,尽量确保类是大写的。

于 2012-05-10T18:07:48.057 回答
1

你说你的代码如下:

public class rounding {
    public static void main (string[] args){
        System.outprintln("Hello World");

从您收到的错误消息中,您很可能在一个名为math.java. 在 Java 中,您必须将类名声明为等于文件名;例如,YourClass.java将声明public class YourClass {.

因此,您需要做的是将您的类名重命名为math,或者将您的文件命名为rounding.java,尽管以小写字母开头的类名是非常规的。

然而,除了这些错误之外,您还会遇到一个错误,指出该类型string不存在。您需要将该类型重命名为string[]String[]否则 JVM 将无法识别您的main方法。

您还将收到一条错误消息,指出这outprintln不是System该类的方法。要打印,请使用System.out.println("Your message")而不是System.outprintln("Your message").

于 2012-05-10T18:27:49.497 回答
0

听起来您正在尝试访问当前项目或范围中不存在的名为“数学”的类。您是否忘记导入您应该使用的特定库?

于 2012-05-10T18:07:23.483 回答
0

这是正确的代码:

public class Rounding {
    public static void main (String[] args){
        System.out.println("Hello World");
    }
}

一些小错误,通常由所有开始使用 Java 和 Eclipse 的人完成。Vulcan 已经给出了错误的描述。

于 2012-05-11T13:16:04.350 回答