ビルド・スクリプトの生成

ビルド・スクリプトの生成に適用される制限事項は次のとおり :

  • マイグレーションツールによって生成されたビルド・スクリプトは、複数の application.xml ファイルが入力に与えられている場合は、有効ではありません。生成された build_ear.xml ファイルは、無効です。
  • マイグレーションツールによって生成されたビルド・スクリプトは、出力ディレクトリーのディレクトリー構造に依存しています。移行後、 いくつかのディレクトリ名を変更したり、出力ディレクトリを他のディレクトリへ移動した場合、スクリプトは動作しません。

ビルド実行前に、異なるマシン向けにコードを変換したい場合、対象となるマシン上に、同じディレクトリ構造を整備する必要があります。
ツールの能力 のセクションにおける話として、, 生成されたビルド・スクリプトが、正しく動作するためには、マイグレーションツールに入力するスクリプトが負うこととして、 Java EE 仕様に準拠した JAR ファイルと WAR ファイルの構造に沿ったディレクトリ構造の外形となっていることです。もしこれに従っていない場合、ビルド・スクリプトは正しく実行されません。
マイグレーションツールに生成されるビルド・スクリプト build_jar を、実行時に、エンタープライズビーンを保管している JAR ファイルを生成可能にする為には、マイグレーションツールへの入力は、次の構造に従う必要があります。 :

<_app-dir_>/META-INF/*.xml or <_app-dir_>/*.xml
<_app-dir_>/sample/app/*.java

マイグレーションツールに生成されるビルド・スクリプト build_war を、実行時に、 Web アプリケーションを保管している WAR ファイルを生成可能にする為には、マイグレーションツールへの入力は、次の構造に従う必要があります。 :

<_app-dir_>/WEB-INF/*.xml or <_app-dir_>/*.xml
<_app-dir_>/sample/app/*.java 
<_app-dir_>/docroot/[_helper files such as HTML and JSP_]

マイグレーションツールに生成されるビルド・スクリプト build_ear を、実行時に、エンタープライズビーンと、 Web アプリケーションを保管している EAR ファイルを生成可能にする為には、マイグレーションツールへの入力は、次の構造に従う必要があります。 :

<_app-dir_>/META-INF/*.xml or <_app-dir_>/*.xml
<_app-dir_>/[_directory structure for creating JAR_] 
<_app-dir_>/[_directory structure for creating WAR_]

EAR ファイルのひとつのケースでは、ちょうどこのディレクトリ構造の留意事項が理想です。また、次のようなディレクトリ構造の入力は、生成されたビルド・スクリプトがトラブルなく動作することが期待できます。 :

<_app-dir_>/META-INF/application.xml, ejb-jar.xml, *.xml 
<_app-dir_>/WEB-INF/web.xml
<_app-dir_>/sample/app/*.java
<_app-dir_>/docroot/[_helper files such as HTML and JSP_]
  • GlassFish アプリケーション・サーバーのクラスローダーは、デフォルトでは、 JAR ファイルと WAR ファイルの両方に存在している同じクラスを、考慮しません。ビルド・スクリプトは、唯一このことに対して、ある程度注意が必要です。 JAR ファイルのクラスファイルが WAR ファイルのディレクトリ (web.xml ファイルを配置しているディレクトリ ) 内部に依存している場合、このファイルは、 JAR ファイルと WAR ファイルの両方にパッケージされます。この衝突を避ける為には、 JAR ファイルのディレクトリ内部へ配置し、 WAR ファイルからは削除する必要があります。その他の方法は、 build_war.xml ファイルのコンパイルタスク内部に定義している、 Java コンパイラー javac 引数として引き渡された、ファイルの参照から削除することです。

日本語翻訳: jack spallaw

英文 (翻訳したバージョン: 5)