Eclipse plugin 尝试在插件中加载JDBC驱动程序jar

Eclipse plugin 尝试在插件中加载JDBC驱动程序jar,eclipse-plugin,Eclipse Plugin,我可以像这样加载JDBC jar文件的类: ClassLoader cl = new URLClassLoader(new URL[]{jarFile.toURI().toURL()}, this.getClass().getClassLoader()); Class.forName("org.postgresql.Driver", true, cl); 在检查类加载器时,我可以看到几个类,包括 司机班。 但是,当我试图打开一个连接时,我得到一个“找不到合适的驱动程序”错误。 我遗漏了什么

我可以像这样加载JDBC jar文件的类:

ClassLoader cl = new URLClassLoader(new URL[]{jarFile.toURI().toURL()}, this.getClass().getClassLoader());

Class.forName("org.postgresql.Driver", true, cl);

在检查类加载器时,我可以看到几个类,包括 司机班。 但是,当我试图打开一个连接时,我得到一个“找不到合适的驱动程序”错误。
我遗漏了什么?

Eclipse插件类加载器在查找类时不会查看额外的URLClassLoader。他们只查看插件清单中的信息。这是否意味着运行时不可能动态加载?我读到的许多提示都指向使用这个.getClass().getClassLoader()作为父类加载器应该可以工作。Eclipse/OSGi类加载器与普通Java类加载器不同,动态jar加载很困难,除非jar是OSGi包/Eclipse插件。如果这始终是同一个Jar,那么只需将Jar添加到MANIFEST.MF中插件的
Bundle ClassPath
,就不需要使用类加载器。