我一直在努力让我的OSGi应用程序在eclipse之外运行。它肯定不像我想象的那么容易,当然不仅仅是运行java -jar org.eclipse.osgi_3.7.1.jar并安装插件的情况。
我希望这是最后一个问题
java.sql.SQLException:没有为jdbc找到合适的驱动程序:mysql:// localhost:3306 /
这在Eclipse中运行良好。我有一个持久性捆绑和几个碎片捆绑,我加载取决于我需要的数据库类型。然后我还有另一个包含数据库JDBC驱动程序的包。在eclipse中我可以运行它,在Eclipse中我已经尝试了一切,包括使用类加载器来加载驱动程序
Activator.context = bundleContext;
Class.forName("com.mysql.jdbc.Driver");
try {
context.getBundle().loadClass("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
知道看什么吗?从我可以看到我的设置是相同的,并且都运行相同的包。
答案 0 :(得分:2)
您的捆绑包是否导入包com.mysql.jdbc
?
阅读以下维基页面,了解为什么这可能在Eclipse内部工作但在适当的OSGi环境中不起作用的背景:http://wiki.osgi.org/wiki/Why_does_Eclipse_find_javax.swing_but_not_Felix%3F