Ant スクリプトの実行

J2C Bean とデータ・バインディング・クラスの設定を Ant ファイルに保存すれば、この Ant スクリプトを別々に実行できます。

始める前に

J2C Bean 作成ウィザードで「設定を Ant スクリプトに保存 (Save settings in an Ant script)」を選択する必要があります。
重要: 「Ant スクリプトとしてセッションを保存」オプションは、MFS ベースのアプリケーションでは使用できません。

手順

  1. 実行したい Ant ファイルを右クリックし、「実行」 > 「外部ツール構成...」を選択します。
  2. 起動属性ウィンドウで、JRE タブを開き、「ワークスペースと同じ JRE で実行」を選択します。「適用」をクリックしてから「実行」をクリックします。
    注: 最初に Ant スクリプトを実行するときのみ、JRE を設定する必要があります。次回の実行からは、単に Ant ファイルを右クリックして、「実行」 > 「2 Ant ビルド (2 Ant Build)」を選択してください。

コマンド行からの Ant スクリプトの実行

Ant スクリプトは、一度生成または変更されると、 IDE を起動しなくても実行できます。これをヘッドレス・モードと呼びます。Ant スクリプトを実行するには、単に antRunner アプリケーションを呼び出して、引数として Ant ファイルを引き渡します。

  1. 生成した Ant スクリプトをヘッドレス・モードで実行するためのシンプルなバッチ・ファイル Test.bat を作成します (あるいは、../IBM/IBMIMShared/plugins/com.ibm.j2c.cheatsheet.content にあるサンプルを使用します)。
    echo off
    setlocal
    
    set ECLIPSE=d:¥IBM¥SDP75
    set WORKSPACE=d:¥WorkspaceANT
    set BUILDFILE=d:¥INPUTMSG.xml
    
    
    set JAVA_HOME=%ECLIPSE%¥jdk¥jre
    set PATH=%JAVA_HOME%¥bin;%PATH%
    set CLASSPATH=%JAVA_HOME%¥lib;%CLASSPATH%
    set EQUINOXJAR=%ECLIPSE%¥plugins¥org.eclipse.equinox.launcher_1.0.100.v20080509-1800.jar
    
    java  -showversion -Xms50M -Xmx350M -XX:MaxPermSize=128m -cp "%EQUINOXJAR%" 
    
    org.eclipse.core.launcher.Main  -data %WORKSPACE%  -application org.eclipse.ant.core.antRunner -
    
    buildfile %BUILDFILE%

    Linux: antgenerate.sh ファイルを作成します (あるいは、../IBM/IBMIMShared/plugins/com.ibm.j2c.cheatsheet.content にあるサンプルを使用します)。

    #!/bin/bash
    ECLIPSE="/opt/IBM/SDP/"
    WORKSPACE="/home/temp/workspace/ant"
    BUILDFILE="/home/temp/antscript/Customer.xml"
    JAVA_HOME="$ECLIPSE/jdk"
    JAVA="$JAVA_HOME/jre/bin/java"
    EQUINOXJAR="$ECLIPSE/plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar"
    
    PATH="$PATH:$JAVA_HOME/bin"
    export PATH
    CLASSPATH="$CLASSPATH:$JAVA_HOME/lib"
    export CLASSPATH
    "$JAVA" -cp "$EQUINOXJAR" org.eclipse.core.launcher.Main -os linux -ws gtk -data "$WORKSPACE" -application org.eclipse.ant.core.antRunner -buildfile "$BUILDFILE"
    ここで、
    • ECLIPSE 環境変数は RAD 内の Eclipse フォルダーへのパスを定義します。
    • WORKSPACE はワークスペースが作成されるパスを定義します。
    • BUILDFILE は、実行したい、生成済みの ANT スクリプトのパスです。

    org.eclipse.equinox.launcher JAR ファイルが存在することを確認します。

    環境に合うようにバッチ・ファイル内の変数を変更できます。

    • ECLIPSE をご使用の Eclipse ルートに置換します
    • WORKSPACE をワークスペースの名前とロケーションに置換します
    • BUILDFILE をご使用の J2C Ant スクリプトに置換します
  2. コマンド・ウィンドウを開いて、コマンド行から Test.bat を呼び出します。
  3. Test.bat が正常に完了したら、ワークスペースを開くことができ、プロジェクトとデータ・バインディング・ファイルがすべて作成されます。

次のタスク

Ant スクリプトの既知の制限: RAR を見つけることができません。
特定のリソース・アダプターについて、ワークスペース内にコネクター・プロジェクトを既に作成してある場合、J2C Java™ Bean ウィザードを使用すると、リソース・アダプターは再度インポートされます。 Ant スクリプトを生成すると、 コネクター・プロジェクトから適切な情報が提供されないため、スクリプトはリソース・アダプターのロケーションを 探すことができません。 ra.file 値が cannotlocaterar と等しい場合は、 リソース・アダプターのロケーションを、生成済みの J2C Java Bean Ant スクリプトに手動で追加する必要があります。 これは既知の制限です。Ant ファイルには、以下の行が含まれます。 property name="ra.file" value="Cannot Locate RAR "
<target name="Init1">
        <property name="debug" value="true"/>
        <property name="project1" value="Test"/>
        <property name="j2c.runtime" value="WebSphere Application Server v7.0"/>
        <property name="ra.project" value="cicseci7102"/>
        <property name="ra.runtime" value="WebSphere Application Server v7.0"/>
        <property name="ra.file" value="Cannot Locate RAR" />
    </target>
Ant スクリプトの既知の制限: RAR を見つけることができません。
コマンド行から Ant スクリプトを実行し、リソース・アダプターをワークスペースにインポートしなければならない場合、次のエラーが表示されることがあります。
importResourceAdapter1: 
[j2c:importResourceAdapter] Creating connector project cicseci6022 ...done 

J2CBeanGeneration1: 
[j2c:generateService] Generate service: 
[j2c:generateService] Registry returned Resource Adapter descriptor: null 
[j2c:generateService] Wait for Resource Adapter registry processing ... 
[j2c:generateService] Done after 120 seconds. 
[j2c:generateService] Registry returned Resource Adapter descriptor: null 
[j2c:generateService] Could not retrieve a Resource Adapter for project: cicseci 
6022 
[j2c:generateService] Generate service ...failed 
BUILD SUCCESSFUL 
これは、リソース・アダプターのインポート中にシステムがタイムアウトするためです。

解決策

この問題を解決するには、次の方法のいずれかを選択してください。
  • コマンド行で Ant スクリプトを再実行すると、スクリプトが正常に実行されます。
  • ワークスペースを作成し、リソース・アダプター・プロジェクトを作成して、最初にリソース・アダプターをインポートしてから Ant スクリプトを実行します。

フィードバック