我使用javac helloswing.java进行编译,但无法使用java swingtutorial.helloswing运行,因为它在线程主NoClassDefFoundError中表示异常。找不到主要课程
我刚刚将类路径添加到c:... \ rt.jar但仍然是java -cp。 swingtutorial.helloswing找不到主要原因?
package swingtutorial;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;
public class helloswing extends JFrame {
public helloswing() {
setTitle("Hello Swing");
setSize(300, 200);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
helloswing ex = new helloswing();
ex.setVisible(true);
}
});
}
}
答案 0 :(得分:1)
您可能需要使用该类的完全限定名称:
java swingtutorial.helloswing
答案 1 :(得分:1)
您需要运行
java swingtutorial.helloswing -cp [classpath]
由于包是swingtutorial
,您需要在要运行的类的名称中指定它。
答案 2 :(得分:1)
您需要指定类路径。试试
javac swingtutorial\helloswing.java
java -cp . swingtutorial.helloswing
答案 3 :(得分:1)
在您自己解决此问题之前,您需要更好地理解Java中的 classpath 概念。
我建议您查看官方Java教程部分:http://download.oracle.com/javase/tutorial/java/package/managingfiles.html