我在我的Java项目中使用class.forname
加载一个类,该项目使用Eclipse打包为runnable jar。我加载的类不存在于同一个jar中。
我的想法是包含要加载的类的jar只需要在Classpath中。然而,这不起作用,我找不到类。
具体来说,我在我的Java项目中使用oracle.jdbc.driver.OracleDriver
加载Oracle驱动程序类(class.forname
),我已将其打包为Eclipse中的可运行jar。可运行的jar没有包含ojdbc jar。我在我的类路径中保存了包含oracle驱动程序类的ojdbc.jar文件,然后我尝试执行runnable jar。它没有找到课程。我已经验证了类路径,它包含jar。甚至班级也存在。
我对class.forname如何工作错误的理解。它不能从类路径中的jar加载类吗?那种情况需要做什么?我不想在我的包中包含驱动程序。