所以我实际上正在介绍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)
答案 0 :(得分:1)
ClassNotFoundException:math 我猜你在数学中创建了一个大写字母M的类,但是当你在某个地方调用它时,它没有大写,也没有正确引用。尝试在您的代码中仔细检查。 友好的FYI适用于适当的Java标准,尝试确保类是大写的。
答案 1 :(得分: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")
。
答案 2 :(得分:0)
听起来您正在尝试访问当前项目或范围中不存在的名为“math”的类。您是否忘记导入您应该使用的特定库?
答案 3 :(得分:0)
这是正确的代码:
public class Rounding {
public static void main (String[] args){
System.out.println("Hello World");
}
}
一些小错误通常由所有以Java和Eclipse开始的人完成。 Vulcan已经给出了错误的描述。