問題は、このパッケージとその子が「インポート」のパッケージのリストに表示されないことです。すべての pde パッケージをインポートすると、とにかく org.eclipse.pde.internal が使用可能になります。しかし、そのソースがわかりません。このパッケージを管理するにはどうすればよいですか?
2 に答える
役立つかもしれない Eclipse コミュニティーからのいくつかのルールを次に示します。
パッケージ名はプラグイン名と一致する必要があります。右から剥がさないと。探しているコードはプラグインにあるはずです
org.eclipse.pde.internal
(存在しません)。ストリップinternal
すると、既存のプラグインが得られます。OSGi では、プラグイン X のパッケージを他のプラグインから隠すことができます。この機能は実際には使用されません。クラスをインポートすることはできますが、Eclipse はそれらをコード補完に表示せず、警告が表示されます。OSGi/バンドル クラスローダーがスロー
NoClassDefFoundError
するオプションがありますが、そのオプションは通常無効になっています。エクスポート リストは、MANIFEST.MF
インポートしようとしているプラグインの にあります。エクスポートされていないパッケージのほとんどは package の下にある
internal
ため、これはヒントです: このコードは使用しないでください。これは公式 API の一部ではありません。Eclipse の次のバージョンまたはプラグインで変更される可能性があり、(公式 API とは異なり) コードが壊れても誰も気にしません。
もちろん、世界はそれほど単純ではありません。これが、内部コードの使用が嫌われ、classloader オプションが無効になっている理由です (= Eclipse はこの動作を強制できますが、強制しません)。
内部 API を使用すると便利だと思われる場合は、https://bugs.eclipse.org/bugs/でバグ レポートを提出してください。