我正在尝试使用 Eclipse 内部浏览器显示任何网站。
这是我正在尝试的代码:
public class WebTest {
public static void main(String[] args) {
NativeInterface.open();
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JFrame frame = new JFrame("YouTube Viewer");
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.getContentPane().add(getBrowserPanel(),
BorderLayout.CENTER);
frame.setSize(800, 600);
frame.setLocationByPlatform(true);
frame.setVisible(true);
}
});
NativeInterface.runEventPump();
// don't forget to properly close native components
Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
@Override
public void run() {
NativeInterface.close();
}
}));
}
public static JPanel getBrowserPanel() {
JPanel webBrowserPanel = new JPanel(new BorderLayout());
JWebBrowser webBrowser = new JWebBrowser();
webBrowserPanel.add(webBrowser, BorderLayout.CENTER);
webBrowser.setBarsVisible(false);
webBrowser.navigate("https://www.youtube.com/v/b-Cr0EWwaTk?fs=1");
return webBrowserPanel;
}
}
但是,当我尝试运行它时,出现以下异常:
Exception in thread "main" java.lang.NoSuchFieldError: DEPENDENCIES_CHECKVERSIONS
at chrriis.dj.nativeswing.swtimpl.NSSystemPropertySWT.<clinit>(NSSystemPropertySWT.java:94)
at chrriis.dj.nativeswing.swtimpl.core.SWTNativeInterface.<clinit>(SWTNativeInterface.java:86)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at chrriis.dj.nativeswing.swtimpl.internal.NativeCoreObjectFactory.create(NativeCoreObjectFactory.java:38)
at chrriis.dj.nativeswing.swtimpl.NativeInterface.<clinit>(NativeInterface.java:22)
at WebTest.main(WebTest.java:14)
所以我的依赖项显然有问题......但我不知道如何解决这个问题,我已经包含了所有必要的 jar :
有什么想法吗?
最佳答案
也许这可以帮助解决您的问题,dj proyect 的官方论坛
http://ehc.ac/p/djproject/discussion/671154/thread/44d88f52/
关于java - 为什么在 Java 中会出现 NoSuchFieldError 异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28726373/