2015-02-18 63 views
0

java -jar myapp.jar包括ojdbc6.jar但抛出以下异常Java的罐子myapp.jar包括ojdbc6.jar但抛出的ClassNotFoundException

ClassNotFoundException: oracle.jdbc.driver.OracleDriver 

我发现的最接近的职位,对我的作品显示此解决方案的一个类:

C:\Project\bin>java -classpath .;ojdbc6.jar MyApp 

但我需要建立一个jar文件来部署。每次我以建立指向的罐子的方式,包括,classpathojdbc6.jar结束了抛出相同的错误。 MyApp在日食中正常工作,ojdbc6.jar在项目的Referenced Libraries文件夹中。

+0

在你MyApp.class的文件的同一文件夹中的Oracle jar文件? – vianna77 2015-02-18 01:23:52

回答

0

如果您使用Maven,我会建议使用阴影插件来创建一个超级罐子。 http://maven.apache.org/plugins/maven-shade-plugin/

这样你就可以确定没有需要的库/ jar文件丢失了。

如果您不能/不想使用Maven,请提供您获得的整个堆栈跟踪以帮助调试问题。

0

-verbose:class添加到命令行让JVM显示正在加载哪些类。如果您没有看到oracle.jdbc.driver.OracleDriver打印出来,那么可能找不到ojdbc6.jar。

0

谢谢大家的意见!

这工作:http://docs.oracle.com/javase/tutorial/deployment/jar/downman.html

约不适合罐子其他罐子内的类路径C选项的其他职位通风报信,而拿出参考ojdbc6.jar在创建罐子声明和使用类路径中清单(线之间没有空格 - 那些被堆叠的编辑加):

清单-版本:1.0

主类:MyApp的

类路径:ojdbc6.jar

创建-者:1.7.0_71公司(Oracle Corporation)

现在创建罐子声明是这样的:

罐子立方英尺myjar.jar MANIFEST.MF MyApp.class的Other1.class Other2.class Other3。类

问候, 大通

相关问题