Java Web Start – 运行时ClassNotFoundException
我现在正在尝试使用Java Web Start部署Java应用程序。 独立运行时,应用程序运行正常。 我将项目导出为可运行的.jar文件,然后编写相应的jnlp文件。
但是,从jnlp文件运行时,应用程序在启动时会返回以下错误:
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: someClass ........ Caused by: java.lang.ClassNotFoundException: someClass .........
我使用Eclipse Helios导出了.jar文件,其中包含“将所需库打包到生成的JAR中”选项。
这是我的jnlp文件的样子(我替换了一些信息):
Whatever Whatever
另外,我使用WebLogic 10来托管文件,但我怀疑这会有什么不同。
有人可以帮帮我吗?
感谢您的任何投入!
从WebStart开发人员指南 :
必须从JNLP文件的resources部分中指定的JAR文件中检索所有应用程序资源,或者使用对Web服务器的HTTP请求显式检索所有应用程序资源。 建议在JAR文件中存储资源,因为它们将由Java Web Start缓存在本地计算机上。
因此,类加载器机制对于WebStart应用程序是不同的。 我假设它是包装选项“将所需的库打包到生成的JAR中”导致您的案例出现问题。
类someClass
是否包含在signed.jar
文件中包含的jar中? 如果是这样,这将支持这个理论 – 尝试生成单独的jar文件(不要忘记全部签名!)并在
部分中将它们作为单独的
条目引用。
- java.lang.ClassNotFoundException:com.microsoft.jdbc.sqlserver.SQLServerDriver:我加载了正确的驱动程序吗?
- Wildfly 8.1 ClassNotFound org.apache.http.conn.ClientConnectionManager
- Java错误:EventDispatchThread.run()行:不可用
- ClassNotFoundException在修改后的SimpleShortestPathsVertex上运行GiraphRunner
- oracle.jdbc.driver.OracleDriver ClassNotFoundException
- java.lang.ClassNotFoundException:org.springframework.http.converter.json.MappingJackson2HttpMessageConverter
- 通过CLI执行testng.xml时出错:无法找到或加载主类org.testng.TestNG
- Java类存在于类路径中,但启动失败,错误:无法找到或加载主类
- 为什么我得到Class not found例外