gpt4 book ai didi

java - 在其他机器上jar里找不到Oracle驱动

转载 作者:行者123 更新时间:2023-12-01 15:20:32 25 4
gpt4 key购买 nike

我正在尝试导出包含 ojdbc14.jar 的 jar 文件,以允许在我的计算机外部执行。我可以使用当前导出的 jar 成功执行此操作,但仅限于我的计算机,当其他人尝试时,它会失败并出现错误: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver尝试调用Class.forName

我在 SO 上看到了很多与此相关的类似问题,但没有一个问题似乎有确切的问题,而且解决方案也不起作用。

类别:

InputStream inputStream = JdbcConnection.class.getClassLoader().getResourceAsStream("properties/jdbc.properties");

try {

PROPERTIES.load(inputStream); //Load the jdbc properties


//System.out.println(properties.getProperty("jdbc.driverClassName")); <-- this prints out the correct output`
Class.forName(PROPERTIES.getProperty("jdbc.driverClassName")).newInstance(); //Load the oracle driver

list :(我的 ojdbc14.jar 位于 lib 中,但如果仅包含“ojdbc14.jar”,则该 jar 只能在我的本地计算机上运行,​​其他 jar 没有提供的路径有问题,不确定这是否重要)

Manifest-Version: 1.0
Main-Class: JdbcConnection
Class-Path: lib/ojdbc14.jar ojdbc14.jar extrsrcs/kxml2-2.3.0.jar extrsrcs/xstream-1.4.2.jar src/properties/jdbc.properties

更新:

This question更好地解释了我如何解决我的问题,因为它与 Jar-within-Jars、可执行 jar 等相关。

最佳答案

我不认为你可以在一个 jar 中包含其他 jar (这就是你想要做的,不是吗?)我怀疑它在你的机器上工作,因为 ojdbc14.jar 位于你的类路径中的某个地方(即作为独立文件,而不是包含在你的 jar 中)

希望这有帮助内森

关于java - 在其他机器上jar里找不到Oracle驱动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10986696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com