Eclipse插件开发--Bundle-ClassPath定义

时间:2012-04-12 13:05:20

标签: eclipse plugins

我正在开发需要使用JDBC驱动程序的插件(mysql-connector-java-5.1.19-bin.jar)。当我在插件清单中定义此jar文件的路径时,如下所示:

Bundle-ClassPath:lib / mysql-connector-java-5.1.19-bin.jar

插件停止识别我的视图,我得到了这个例外:

java.lang.ClassNotFoundException:diplomaproject.views.SampleView     在org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:494)     在org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410)     在org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398)     在org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)     at java.lang.ClassLoader.loadClass(Unknown Source)     在org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:326)     在org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:231)     在org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1193) ...

当我删除行:

Bundle-ClassPath:lib / mysql-connector-java-5.1.19-bin.jar

从清单,视图正在运行,但JDBC连接器不起作用。

我的整个清单文件: 清单 - 版本:1.0 Bundle-ManifestVersion:2 捆绑名称:DiplomaProject Bundle-SymbolicName:diplomaProject;单:=真 Bundle-Version:1.0.0.qualifier Bundle-Activator:diplomaproject.Activator 捆绑供应商:MYDIPLOMA Require-Bundle:org.eclipse.ui,  org.eclipse.core.runtime Bundle-RequiredExecutionEnvironment:JavaSE-1.6 Bundle-ActivationPolicy:懒惰 Bundle-ClassPath:lib / mysql-connector-java-5.1.19-bin.jar

3 个答案:

答案 0 :(得分:6)

您必须在包类路径中添加一个点('。')。这会将从插件中包含的源编译的所有类添加到类路径中。

清单中的正确属性应为:

Bundle-ClassPath: lib/mysql-connector-java-5.1.19-bin.jar,
 .

答案 1 :(得分:1)

您还需要将包添加到类路径中。试试这个:

Bundle-ClassPath: .,lib/mysql-connector-java-5.1.19-bin.jar

答案 2 :(得分:0)

我遇到了同样的问题。 由于一些更改,我的build.properties文件已更改。

我替换了similler项目中的内容并且有效。