3

バイナリ ライブラリを使用して一部の作業を行う Eclipse プラグイン (サード パーティによって開発されたもので、ソース コードはありません) があります。ライブラリはオープンソースです。配布されたプラグインには Windows 用のバイナリしか含まれていませんが、他のプラットフォーム用に簡単にコンパイルできます。私が理解できないのは、図書館をどこに置くべきかということです。私は現在 OS X で作業していますが、Linux も問題です。

Windows ライブラリは、eclipse/plugins/plugin_name/os/win32/x86 に配置されます。os/macosx/x86_64 (org.eclipse.osgi.service.environments の定数に対応) と他の多くのバリアントを使用してみましたが、何も機能せず、Eclipse がどのように設定されるかに関するドキュメントが見つかりませんライブラリ パス。

ライブラリをプラグイン サブディレクトリのどこに配置すれば、Eclipse が適切なプラットフォーム用にライブラリをロードできるようになりますか?

4

1 に答える 1

1

バイナリ ライブラリ (*.dll など) は、プラグイン JAR 自体にバンドルできます。この場合、おそらく /os/win32/x86/thelib.dll にあります。

サードパーティのプラグインで META-INF/MANIFEST.MF を編集できる場合 (jar ファイルを解凍)、ヘッダー「Bundle-NativeCode」を確認します。例えば:

Bundle-NativeCode: /os/win32/x86;osname=win32;processor=x86

次に、この方法で OS X のパスを追加できます。

Bundle-NativeCode: /os/win32/x86;osname=win32;processor=x86, /os/osx/x86; osname=macosx;processor=x86

OS X ライブラリを対応するフォルダーに配置し、jar を再圧縮すれば完了です。

于 2011-06-10T15:52:41.227 に答える