我有一个使用NetBeans构建的小程序,称为AKApplet。它在IDE中运行良好,但是当我将其放在网页中时,会引发以下错误:
Exception in thread "Thread-15" java.lang.NoClassDefFoundError: AKApplet$2
at AKApplet.run(AKApplet.java:675)
小程序使用run()方法在后台加载一些数据,同时保持UI响应。很标准的东西。在第675行,数据加载后,我尝试使用
invokeLater()
更新UI组件:public void run() {
// ... data loads ...
// line 675:
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
userMessages.setText("Data loaded.");
panelList.setVisible(true);
validate();
}
});
}
我要更新的组件是
userMessages
,JLabel和panelList
(它是一个面板)。我不认为这已经走得太远了。有人知道会发生什么吗?此时,小程序已加载,并且可以看到和更新了组件等。
最佳答案
确保不仅要部署AKApplet.class
,而且还要部署AKApplet$1.class
,AKApplet$2.class
等。
关于java - Java Applet中的NoClassDefFoundError在invokeLater()上,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3771537/