|
Q: Project Builder で Mac OS X JNI (Java Native
Interface)
ライブラリを作成するにはどうすればいいですか?
A: Project Builder は、JNI
ライブラリに対応したテンプレートプロジェクトまたはテンプレートターゲットを持っていません。Mac
OS X に対応した JNI
ライブラリをビルドするには、次の手順に従って、Project
Builder のターゲットを作成してください。
- 「Project」メニューで新しいターゲットを追加します。
- 「Library」という名前のターゲットテンプレートを選択します。
- ターゲット名を「libhello.jnilib」のように、lib{ライブラリ名}.jnilib
に設定します。
- 新しいターゲットを選択します。これにより、ターゲットパネルの右側のパネルに「Build
Settings」タブが表示されます。「Build
Settings」のターゲットを選択します。
- 下方向にスクロールして、「Search paths」を表示します。
- 「Search paths」パネルにあるヘッダーリストに以下のパスを追加します。
/System/Library/Frameworks/JavaVM.framework/Headers
|
- 下方向にスクロールして、「Expert Build
Settings」を表示します。
- 「Expert Build Settings」で
DYLIB_COMPATIBILITY_VERSION、および DYLIB_CURRENT_VERSION オプションを削除します (delete
キーを押すと、これらのオプションが削除されます)。
- 「Expert Build Settings」で LIBRARY_STYLE オプションを BUNDLE に変更します (値のカラムをダブルクリックすると変更できます)。
- ウインドウの左側にある縦方向のパネルで「Files」タブを選択します。
- ターゲットに Java
によって生成されたヘッダファイルとネイティブ実装を追加します。
|
注意:
JNI ライブラリは、Java
プロパティの「java.library.path」で定義されたパスにあり、System.loadLibrary("<ライブラリ名>")
メソッドを使ってロードされる必要があります。java.library.path
を拡張するには、追加のディレクトリを含む
DYLD_LIBRARY_PATH 環境変数を定義します。
|
Mac OS X の場合、java.library.path
のデフォルト値は次のとおりです。
.:/usr/lib:/usr/lib/java:/lib:/System/Library/
Frameworks/JavaVM.framework/Versions/1.3/Libraries
|
|
Project Builder と MRJAppBuilder で作られた Java アプリケーションはアプリケーションバンドル内の Contents/Resources/Java/ パスにあるライブラリもサーチします。
|
更新日:2001 年 6 月 18 日
|