How to use Xcode for JExternal

 

このページでは、Apple社のXcodeを使用して、JExternalに付属するデモJEX_SimpleDemo_411のDemo5.jarがどうように作成/デバッグされたかを説明します。Xcodeを使用すれば、JExternalによって4D内から呼ばれるJavaメソッドを、4Dの実行時に、デバッグすることができます。デモJEX_SimpleDemo_411は、JExternal_411.zipに含まれており、ここからダウンロードすることができます。このデモは、4D v11で作成されています。

 

JavaClassedフォルダーにあるDemo5.jarは、ストラクチャファイルJEX_SimpleDemo_411.4DBのために使用されます。

 

Demo5.jarには"com.ronri_kobo.demos.Demo5"というクラスがあり、そのクラスには、"getSystemProperties ()" というスタティックメソッド(クラスメソッド)があります。このメソッドは、Javaの全プロパティを返り値として返します。このメソッドは、下記のように4Dから呼び出されます。

 

1. How to create Demo5.jar

 

[1.1] Xcodeを起動してください。Xcodeは、/Developer/Applicationsフオルダーにあります。4Dは、後で、Xcodeによって起動されるので、4Dを終了しておいてください。

 

[1.2] XcodeのFileメニューの中の"New Project..."を実行してください。そして、Assistantウィンドウで、"Java Tool" を選択し、"Next"ボタンをクリックしてください。

 

[1.3] Assistantウィンドウで、下記のように、プロジェクトの名前とそのディレクトリーを設定し、"Finish"ボタンをクリックしてください。

 

[1.4] Xcodeは、下記のようなDemo5用のプロジェクトウィンドウを作成します。

 

[1.5] XcodeのProjectメニューの中の"Edit Active Executable 'Java'"を実行してください。そして、'Executable "Java" Info'ウィンドウの中のExecutable pathフィールドを修正し、すでにある「/usr/bin/java」を下記のように「/Applications/4D v11 SQL/4D Developer Professional/4D Developer.app」に置き換えてください。ここでは、4D v11が、「/Applications/4D v11 SQL/......」にインストールされていることを想定しています。置き換えると、ウィンドウタイトルが、'Executable "4D Developer.app" Info'に変わります。この設定は、4Dの実行時にJavaコードをデバッグするめたに、重要となります。設定後、このウィンドウを閉じてください。

 

[1.6] XcodeのProjectメニューの中の"New Build Phase"の中のサブメニューアイテム"New Run Script Build Phase"を実行してください。そして、'Run Script Phase for "Demo5" Info'ウィンドウの中のScriptフィールドを編集して、下記のようなシェルスクリプトを作成してください。

 

[1.7] 上記のシェルスクリプトは、Debugフォルダの中に作成されるDemo5.jarを、JavaClassesフォルダーにコピーするためのシェルスクリプトです。

 

[1.8] 'Run Script Phase for "Demo5" Info'ウィンドウを閉じると、Demo5プロジェクトウィンドウの"Groups & Files"の中に、ビルドフェーズとして、"Run Scrip"が追加されたことがわかります。

 

[1.9] Demo5プロジェクトウィンドウの"Groups & Files"の中の"Demo5.java"をダブルクリックして、ソースコードエディタを開き、"Demo5.java"を下記のように変更してください。

 

[1.10] Demo5.jarをビルドするために、"Build"ポップアップメニューの"Build"を実行してください。ビルドが成功すれば、DebugフォルダーにDemo5.jarが作成されるとともに、"Run Script"に設定したシェルスクリプト( 参照 [1.6] )により、JavaClassesフォルダーにDemo5.jarがコピーされます。

 

2. How to debug Demo5.java

 

[2.1] Demo5.javaウィンドウで、ソースコードの左側をクリックして、下記のようにブレイクポイントを設定してください。

 

[2.2] デバッグを開始するために、"Build and Go"ポップアップメニューの "Debug Executable"を実行してください。Executable path( 参照 [1.5] )として指定された/Applications/4D v11 SQL/4D Developer Professional/にある4D Developer.appが起動します。4D Developer.appが起動したら、Fileメニューの"Open"のサブメニューアイテム"Database..."を実行して、ストラクチャファイルJEX_SimpleDemo_411.4DBを開いてください。

 

[2.3] Demo5.jarのメドッドを呼び出すだめに、JEX_SimpleDemo_411のDemo5ウィンドウを開き、"Get System Properties"ボタンをクリックしてください。

 

[2.4] "Get System Properties"ボタンのボタンスクリプトの中で、下記の行が実行されたとき、最前面ウィンドウが、Xcodeのデバッガーウィンドウに切り替わります。

 

[2.5] 実行は、設定されたブレイクポイントで停止し、Javaメソッドをデバッグすることができます。Javaメソッドの実行が終了すると、最前面ウィンドウは、JEX_SimpleDemo_411のDemo5ウィンドウに切り替わり、このJavaメソッドの返り値が、Demo5ウィンドウに表示されます。

 

このようにXcodeを使用すれば、あなたの作成するJavaのコードを、4Dと連動してデバッグすることができます。

以上