在我的 OSGi 环境中,我正在尝试预加载数据库驱动程序以供进一步使用。通常,可以这样做:
Class.forName("com.mysql.jdbc.Driver");
之后,可以创建连接。但是,如果我在 Felix 下的 OSGi 中使用它,他说找不到类 ( ClassNotFoundException
) 并且无法创建连接。但是当我做这样的事情时(try-catch
被省略):
com.mysql.jdbc.Driver d = new com.mysql.jdbcDriver
Class.forName("com.mysql.jdbc.Driver");
然后一切正常并创建连接。但是,这不是很漂亮,因为无法交换驱动程序类。
有没有办法用第一种方法加载类?我假设我必须提供正确的类加载器。但我从哪里得到它?
MySQL 驱动程序作为 OSGi 包装器包提供。