从导出的Jar执行时找不到jdbc驱动程序

时间:2012-09-29 16:38:44

标签: java exception jdbc jar jaybird

我有一个Java小程序,从eclipe执行时它可以正常工作,但我想将它导出到Jar并使用它。但是当我这样做时,我发现没有找到jdbc驱动程序,似乎在导出时,jaybird没有导出。

对于导出我使用eclipse导出并选择Java / JAR文件,在构建路径中我有jaybird标记要导出。

有什么建议吗?提前致谢

4 个答案:

答案 0 :(得分:1)

使用Fat Jar构建包含所有从属库的可运行JAR

答案 1 :(得分:1)

您很可能错过了Jaybird jar文件的META-INF文件夹中的文件。这些文件是Jaybird工作所必需的。另一种可能性是你缺少Jaybird所需的依赖项之一(connector-api-1.5.jar,对于Jaybird 2.2或者mini-j2ee.jar用于早期版本)。

即使你让它工作,你很可能会在以后遇到错误,因为Jaybird并不是在开发时支持applet,请参阅http://tracker.firebirdsql.org/browse/JDBC-254NoClassDefFoundError with jdbc applet

BTW:你为什么不按原样使用jar。恕我直言创建包括所有依赖项的胖罐子是丑陋且不灵活的。

答案 2 :(得分:1)

我终于得到了答案,我还必须签署jaybird jar,因为那个jar正在HDD中进行读/写操作

答案 3 :(得分:0)

使用 Eclipse ,您可以轻松解决问题。 通过转到Eclipse -> File -> Export -> Runnable JAR file并选择Extract required libraries into generated JAR选项,Eclipse将在项目旁边提取所需的库并为您创建所需的 MANIFEST.MF 文件,然后将它们打包在一起您的JAR文件。