Xcode プロジェクトに JreEmulation プロジェクトを追加する

J2ObjC の JRE エミュレーション ライブラリは Xcode を使用して構築でき、Xcode プロジェクトのサブプロジェクトとして含めることができます。これにより、ライブラリのビルドに使用する設定を管理できるようになり、ライブラリをプロジェクトに最適な状態で利用できます。

ソースコードをダウンロードする

次のいずれか: - 現在のソースバンドルをダウンロードして、ローカル ディレクトリに upzip します。または - git を使用してソースコード ツリーのクローンを作成します。ローカルソースのチェックアウトの利点は、最新の J2ObjC プロジェクトの変更が反映された状態を維持しやすいことです。ただし、バージョン管理システムの知識がある程度必要になります。

ソースコードはローカル システムのどこにでも配置できます。このドキュメントでは /usr/local/src/j2objc を使用しますが、このパスは必要に応じて変更します。

Build Tools をインストールする

J2ObjC をビルドするには、Xcode のコマンドライン ツールと Apache Maven をインストールする必要があります。次のヒントを参考にしてください。

新しい Mac OS X や Xcode のバージョンではインストール方法が変わることが多いため、静的ページではなく Google 検索を使用します。

プロジェクトのビルド

J2ObjC のビルド手順を行います。コマンドライン ビルドはオプションですが、Xcode 内で呼び出す場合よりもデバッグが簡単です。

JRE をデバッグする場合は、先頭に次の行を追加することをおすすめします。 jre_emul/environment.mk ファイルを 実行する場合:

DEBUGGING_SYMBOLS=YES
OPTIMIZATION_LEVEL=0

JreEmulation Xcode プロジェクト

Xcode で /usr/local/src/j2objc/jre_emul/JreEmulation.xcodeproj を開きます。以下のフォルダがあります。

  • クラス: Java ソースファイルの変換では作成されないコア JRE エミュレーション クラスのセット。
  • jre_emul_tests: Xcode 内でビルドおよび実行される単体テストのセット。これには、変換された JUnit テストは含まれていません。これは、jre_emul ディレクトリの make test を使用してコマンドラインからビルドおよび実行します。
  • Transpiled Classes: JRE ライブラリの Java ソースファイルを変換して作成されたファイルです。注:
  • Xcode は、欠落しているファイルを赤色でマークします。これらのファイルはビルド中に作成されるため、プロジェクトがビルドされるまで最初はすべて赤色になります。
  • JRE エミュレーション ライブラリには定期的に新しいクラスを追加しているため、このリストが最新でない可能性があります。その場合は、このフォルダを右クリックして [Add Files to JreEmulation.xcodeproj] をクリックし、jre_emul/build_result/Classes とそのサブディレクトリから新しい .m ファイルと .h ファイルを追加します。

JreEmulation プロジェクトをビルドするには、jre_emul ターゲットを選択して、Xcode の [Run] ボタンをクリックします。単体テストをビルドして実行するには、[実行] ボタンの横にある下矢印をクリックし、[テスト] を選択します。

JreEmulation プロジェクトをプロジェクトに追加する

  • 左側のプロジェクト ナビゲーション パネルでプロジェクトを右クリックし、[プロジェクト名にファイルを追加] を選択します。
  • jre_emul/JreEmulation.xcodeproj ファイルを見つけて、[Add] ボタンをクリックします。
  • プロジェクトをクリックしてメイン ターゲットを選択し、そのターゲットの [Build Phases] タブを選択します。
  • [Target Dependencies] セクションを開き、[+] ボタンをクリックして jre_emul ターゲットを選択します。
  • [Link Binary With Libraries] セクションを開き、[+] ボタンをクリックして [libjre_emul.a] を選択します。
  • ターゲットの [Build Settings] タブを選択し、[Header Search Paths] を見つけて、/usr/local/src/j2objc/dist/include ディレクトリへのパスを追加します(実際の場所を置き換えます)。

これで、プロジェクトをビルドすると、必要に応じて JreEmulation プロジェクトがビルドされます。