1

私は現在Eclipseプラグインを開発していますが、少し迷っています...

私にはカスタムの性質があり、ユーザーがこの性質を追加するときに、ユーザープロジェクトのクラスパスに.jarを追加したいと思います(私のconfigure()性質のメソッドでプロジェクトのクラスパスを更新したい)。

その方法がわかりません...この.jarをIClasspathEntryに「マップ」して、IJavaProjectに追加する必要があることを理解したと思います。問題は、このjarをプラグインにきれいに含める方法と、それをIClasspathEntryに「マップ」する方法です(.jarは現在プラグインプロジェクトのルートにあるlibフォルダーにあります)

よろしくお願いします!

バレンティン

4

2 に答える 2

2

まず、それをクラスパスエントリにマップする方法:

IClasspathEntry jar = JavaCore.newLibraryEntry(new Path(jarPath), null, null)

次に、このIClasspathEntryをプロジェクトの既存のクラスパスの最後に追加し、IJavaProjectにあるget/setRawClasspathメソッドを使用して設定できます。

http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.jdt.doc.isv/reference/api/org/eclipse/jdt/core/IJavaProject.html

このjarをlibディレクトリに保持することは問題ありませんが、プラグインをインストールするときに(/ pluginsディレクトリに.jarとして保持するのではなく)プラグインを解凍する必要がある場合があります。そうしないと、プロジェクトからこのjarにアクセスできなくなります。 。FileLocatorクラスを使用して、このjarへのパスを見つけることができます。

http://help.eclipse.org/helios/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fapi%2Forg%2Feclipse%2Fcore%2Fruntime%2FFileLocator.html

于 2012-10-10T19:04:53.080 に答える
0

IClasspathContainerを作成する必要があります。これは、実行時に具象クラスパスエントリを解決できる提供するコードです。

このチュートリアルを含む、クラスパスコンテナの作成方法に関するさまざまなリソースを利用できます。

于 2012-10-10T18:57:09.310 に答える