2012-04-12 12 views
4

JDBCドライバ(mysql-connector-java-5.1.19-bin.jar)を使用する必要があるプラグインを開発中です。Eclipseプラグイン開発 - バンドルクラスパス定義

バンドル・クラスパス::私はこのようなマニフェストプラグインで、このjarファイルへのパスを定義するときのlib/mysqlの-コネクタのjava-5.1.19-bin.jarを

プラグインは、私の見解を認識するために停止し、私が取得しますこの例外:

にjava.lang.ClassNotFoundException:org.eclipse.osgi.internal.loader.BundleLoader.findClassInternalでdiplomaproject.views.SampleView (BundleLoader.java:494)org.eclipse.osgi.internalで 。 loader.BundleLoader.findClass(BundleLoader.java:410) at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:398) org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105) (java.lang.ClassLoader.loadClass)(不明なソース) at org.eclipse.osgi.internal.loader.BundleLoader.loadClass BundleLoader.java:326) at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:231) at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle。 Javaの:1193) ...

私は、行を削除する場合:

バンドル・クラスパス:libに/ mysqlの-コネクタのjava-5.1.19-bin.jarを

をビュー

がマニフェストから表示されていますが、JDBCコネクタが動作しません。

私のマニフェストファイル全体: ManifestVersion:1.0 バンドル-ManifestVersion:2 バンドル名:DiplomaProject バンドル-SymbolicName:diplomaProject。シングルトン:=真 バンドル・バージョン:1.0.0.qualifier バンドル・アクティベーター:diplomaproject.Activator バンドル-ベンダー:MYDIPLOMA 必要-バンドル:org.eclipse.ui、 org.eclipse.core.runtime Bundle-をRequiredExecutionEnvironmentするJavaSE-1.6 バンドル-ActivationPolicy:怠惰 バンドル・クラスパス:mysqlの-コネクタのjava-5.1.19-bin.jarを/ libに

答えて

6

あなたは( '')、ドットを追加する必要がバンドル・クラスへパス。これにより、プラグインに含まれるソースからコンパイルされたすべてのクラスがクラスパスに追加されます。

マニフェストで正しいプロパティは、次のようになります。

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

回答ありがとうございます。あなたの投稿に従ってBundle-ClassPathを修正しましたが、それでも問題が発生します。他の提案はありませんか? – dulo

+1

今すぐバンドルクラスパスを手動で書くのではなく、ランタイムタブを使って編集しようとしましたが、現在はうまくいきません。どうもありがとうございました – dulo

1

はあなたにもクラスパスにバンドルを追加する必要があります。試してみてください:

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

私は同じ問題に直面していました。 いくつかの変更のために私のbuild.propertiesファイルが変更されました。

私はsimillerプロジェクトのコンテンツを置き換えて動作させました。