日食ウィキのよくある質問にあるようです
最も可能性の高い理由は、問題のあるプラグインによって宣言されたクラスの静的初期化子で例外がスローされたことです。.log ファイルをチェックして、それが実際に発生したかどうかを確認してください。
Eclipse プラットフォーム ローダーは、プラグインを構成する Java クラスの初期化中に例外がスローされると、プラグインをロードしません。
このエラーのもう 1 つの一般的な理由は、ロードされるクラスに適切なコンストラクターがないことです。拡張ポイントで宣言されたほとんどのクラスには、引数のない public コンストラクターが必要です。拡張ポイントのドキュメントをチェックして、拡張機能で宣言するクラスに必要なコンストラクターを確認してください。
パッケージ化されたプラグインをデプロイするとき (つまり、PDE を介してランタイム ワークベンチで開始されないとき) にのみ問題が発生する場合は、通常、MANIFEST.MF ファイルの Bundle-ClassPath 属性を確認することをお勧めします。
プラグイン クラスを含む JAR ファイルは、Bundle-ClassPath
. プラグインの適切なクラスがすべてリストされている場合でも、実行時に解決できない他のクラスへの参照が .class ファイルに含まれている可能性があるため、クラスのロードは失敗する可能性があります。この場合、欠落しているクラスを特定する必要があり (通常、問題のあるクラスの import ステートメントを調べて)、必要なエントリを に追加する必要がありますBundle-ClassPath
。追加の JAR ファイルが必要な場合は、それらの JAR もbuild.properties
ファイルにリストして、プラグインのパッケージ化時にそれらが含まれるようにする必要があります。
(このスレッドを最後のポイントの実例として参照してください)
したがって、たとえば、このスレッドでは、eclipse3.0 時間にさかのぼる別の問題について:
このplugin.xml
ファイルorg.eclipse.core.runtime.compatablity
では、必要なプラグインとして " " が指定されています。ただし、Eclipse バージョン 3.0.1 を使用しており、" org.eclipse.core.runtime_3.0.1
" を使用する必要があります。
解決:
Plugin.xml の行を置き換えます
<import plugin="org.eclipse.core.runtime.compatability"/>
と
<import plugin="org.eclipse.core.runtime"/>