我正在尝试使用swt浏览器打开applet嵌入式网页并收到以下错误...卡在这里..可以帮助
java.lang.NoClassDefFoundError: com/sun/deploy/services/Service
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(Unknown Source)
at org.eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
at com.ivb.coep.vtu.plc.OpenBrowser.<init>(OpenBrowser.java:33)
at com.ivb.coep.vtu.plc.OpenBrowser.main(OpenBrowser.java:39)
Caused by: java.lang.ClassNotFoundException: com.sun.deploy.services.Service
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
答案 0 :(得分:1)
applet的浏览器支持因平台而异:
Windows:从Eclipse / SWT 3.5开始,可以在浏览器中查看applet 满足以下所有条件:
1)对于使用样式SWT.NONE创建的浏览器,已安装的IE版本 是7.0或更新
2)对于使用样式SWT.MOZILLA创建的浏览器,已安装 XULRunner版本是1.9.2.x或3.6.x
3)已安装的Java插件是Sun JRE 1.6u10或更高版本,带有 启用了下一代Java插件(此插件已启用 安装JRE时的默认值)
4)应用程序启动时使用相同的JRE提供 安装Java插件
5)应用程序添加了JRE的plugin.jar,deploy.jar和 javaws.jar jars到JRE的引导类路径。例如,要发布 eclipse:eclipse -vmargs -Xbootclasspath / a:“C:\ Program 文件\的Java \ JRE6 \ LIB \ plugin.jar; C:\ PROGRAM 文件\的Java \ JRE6 \ LIB \ deploy.jar; C:\ PROGRAM 文件\爪哇\ JRE6 \ lib中\ javaws.jar“
Linux(Mozilla):可以使用基于Mozilla的浏览器查看Applet 只要在运行时找到Mozilla Java插件。
OS X(WebKit):无法使用基于WebKit的浏览器查看Applet OS X因为启动JRE来执行applet会发生冲突 使用正在运行应用程序的JRE。
参考:http://www.eclipse.org/swt/faq.php#browserapplets
检查上述链接并验证该页面中所有规定的标准,以便在swt浏览器上运行applet。我猜你的应用程序的类路径中缺少一些JAR文件。
特别是java.lang.NoClassDefFoundError: com/sun/deploy/services/Service
。该类属于deploy.jar。