0

問題は、このパッケージとその子が「インポート」のパッケージのリストに表示されないことです。すべての pde パッケージをインポートすると、とにかく org.eclipse.pde.internal が使用可能になります。しかし、そのソースがわかりません。このパッケージを管理するにはどうすればよいですか?

4

2 に答える 2

1

役立つかもしれない Eclipse コミュニティーからのいくつかのルールを次に示します。

  1. パッケージ名はプラグイン名と一致する必要があります。右から剥がさないと。探しているコードはプラグインにあるはずですorg.eclipse.pde.internal(存在しません)。ストリップinternalすると、既存のプラグインが得られます。

  2. OSGi では、プラグイン X のパッケージを他のプラグインから隠すことができます。この機能は実際には使用されません。クラスをインポートすることはできますが、Eclipse はそれらをコード補完に表示せず、警告が表示されます。OSGi/バンドル クラスローダーがスローNoClassDefFoundErrorするオプションがありますが、そのオプションは通常無効になっています。エクスポート リストは、MANIFEST.MFインポートしようとしているプラ​​グインの にあります。

    エクスポートされていないパッケージのほとんどは package の下にあるinternalため、これはヒントです: このコードは使用しないでください。これは公式 API の一部ではありません。Eclipse の次のバージョンまたはプラグインで変更される可能性があり、(公式 API とは異なり) コードが壊れても誰も気にしません。

もちろん、世界はそれほど単純ではありません。これが、内部コードの使用が嫌われ、classloader オプションが無効になっている理由です (= Eclipse はこの動作を強制できますが、強制しません)。

内部 API を使用すると便利だと思われる場合は、https://bugs.eclipse.org/bugs/でバグ レポートを提出してください。

于 2012-05-15T10:48:47.880 に答える