Java简单的问题!(10分)

  • 主题发起人 主题发起人 嫩手
  • 开始时间 开始时间

嫩手

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟刚开始学Java,照着书上写了一个例子,但不知道为什么不能运行,编译通过了,
但在执行的时候总是提示:
Exception in thread "main" java.lang.NoClassDefFoundError: Ellsworth
press any key to countinue...
 
可以看一下:
http://www.java.com.cn/showtopic.asp?TOPIC_ID=8418&Forum_id=31&page=
http://www.5xsoft.com/data/200107/2520054601.htm
解决Exception in thread "main" java.lang.NoClassDefFoundError错误
[ 作者: sonymusic 添加时间: 2001-7-25 20:08:20 ]

应该这样检查你的环境和你的操作:
1、你的文件名对吗?
JAVA要求你的文件和你的类名严格对应的。
比如 public class HelloWorld{ .....
那么文件名一定只能是HelloWorld.java,看仔细了!
2、你的程序中有main方法吗?参数什么的对吗?
main方法的声明应该是这样子的:
public static void main(String[] args)
事实上如果你用开发工具来做的话,是不会错的。如果你用UltraEdit之类的来写程序的话,就一个字不要改的照抄吧!
3、记住,javac后面跟的参数是文件名,但java 后面跟的是类名!
这是我开始学JAVA是犯的错,java HelloWorld.class,然后就报错。后来才弄明白,应该是java HelloWorld。
4、设置了classpath了吗?
不仅是在安装JDK时要设置的内容,一般来说最好还要自己设置一个目录来存放自己的类文件的。比如d:/class目录。
设置classpath=%classpath%;d:/class
那么,现在将HelloWorld.class文件COPY到d:/class目录下,再java HelloWorld应该就OK了。
5、结合第3点和第4点
如果你的类是属于某一个包的,比如这样一个类sony.test.HelloWorld,那么按照我在第4点中说的目录来说,就应该将HelloWorld.class文件存放到d:/class/sony/test/目录下。
执行的时候应该参考第3点中说的,按类名执行:java sony.test.HelloWorld。
明白了吗?一直我也想不出还会有什么理由造成这个出错信息了!如果有哪位兄弟想到了就补充一下吧!
其实如果你使用了一些比较好的编程工具的话,根本就没有机会碰到这个错误的,至少我在使用了VisualAge for Java之后,就没有这样的事情了。
好啦,不说了,祝同志们好运吧!
过了这第一道门,后面的就比较简单啦!

 
如果是applet,嵌在网页中显示。运行就会出错拉。。。
 
该说得楼上的楼上都说完了,呵呵[:)]
 
主程序中没有找到 Ellsworth 这个包
 
哥们,程序拿出来看一下,大家给你分析一下啊。
另:楼上的哥们说的可真全,厉害!支持一下!!!
 
你的是应用程序还是 小应用程序呀?
如果是小应用程序,那其中没有main函数,要用IE来运行,
如果是应用程序,就可以直接 :java 文件名 来运行。
 
常见的类路径设置问题.
 
大家看一下是怎么回事:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class FirstApplication extends JFrame;
{
JButton myButton = new JButton("Click Me");
Container myContainer;

public FirstApplication()
{
super("FirtApplication");
myContainer = getContentPane();
myContainer.setLayout(new FlowLayout(FlowLayout.CENTER));
myContainer.add("center", myButton);
setSize(300,100);
setVisible(true);
myButton.addActionListener(new MyActionListener());
}
class MyActionListener implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
JOptionPane.showConfirmDialog(null, "You have clicked the button!");
}
}
static class myWindowListener extends WindowAdapter
{
public void windowsClosing(WindowEvent e)
{
System.exit(0);
}
}
public static void main(String s[])
{
FirstApplication myApp = new FirstApplication();
myApp.addWindowListener(new myWindowListener());
myApp.setVisible(true);
}
}
编译时总是过不去,提示上面的错误!!!!!!!!!!!!!!!!!!!!
 
不是让我贴出来吗?怎么贴出来没人回答了?
 
刚才在Jcreator里测试了,
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class FirstApplication extends JFrame;
///这里多了一个分号
{
 
我怎么还是通不过,我也是用JCreator2.5版,还是提示出错!
 
在Jcreator里新建一个 Project->选择Basic java Application。
然后把那个.java文件里的代码替换成你的,
必须先编译,然后再运行,这样执行成功了。
 
public class FirstApplication extends JFrame;
<<--多个分号而已
 
查论坛历史帖子
这个是“经典问题”了。
关键词: NoClassDefFoundError
 
我找一个,不行
 
没人会吗?这么长时间了
 
原来可以通过的,现在却不可以通过
另外,在jcreator环境下可以通过,到命令行方式就出错
 
public class FirstApplication extends JFrame;后面的分号去掉,就可以了
我刚刚试过。我用的也是jcreator.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
625
import
I
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部