付録A 参考資料
A.1. MTA コマンドライン引数
以下は、利用可能な MTA コマンドライン引数の詳細な説明です。
スクリプトから実行した場合など、プロンプトを表示せずに MTA コマンドを実行するには、以下の引数を使用する必要があります。
-
--batchMode
-
--overwrite
-
--input
-
--target
引数 | 説明 |
---|---|
--additionalClassPath | クラスパスに追加する追加の JAR ファイルまたはディレクトリーのスペース区切りリスト。逆コンパイルやその他の解析に使用できます。 |
--addonDir | 指定したディレクトリーをカスタムアドオンリポジトリーとして追加します。 |
--analyzeKnownLibraries | アプリケーション内に埋め込まれた既知のソフトウェアアーティファクトを分析するフラグ。デフォルトでは、MTA はアプリケーションコードのみを分析します。 注記 このオプションを使用すると実行時間が長くなり、多数の移行問題が報告される可能性があります。 |
--batchMode | MTA を非対話モードで実行すべきように指定するフラグ。確認をプロンプトなしで実行します。このモードは、コマンドラインに渡さないパラメーターのデフォルト値を取ります。 |
--debug | デバッグモードで MTA を実行するフラグ。 |
--disableTattletale |
Tattletale レポートの生成を無効にするフラグ。 |
--discoverPackages | 入力バイナリーアプリケーションで利用可能なパッケージをすべて表示するフラグ。 |
--enableClassNotFoundAnalysis | クラスパスで利用できない Java ファイルの分析を有効にするフラグ。分析時に一部のクラスが利用できない場合は、これを使用しないでください。 |
--enableCompatibleFilesReport | Compatible Files レポートの生成を有効にするフラグ。問題が検出されない状態ですべてのファイルを処理するため、このレポートには大規模なアプリケーションの処理に時間がかかる場合があります。 |
--enableTattletale |
各アプリケーションの Tattletale レポートの生成を有効にするフラグ。このオプションは、 |
--enableTransactionAnalysis |
[テクノロジープレビュー] リレーショナルデータベーステーブルで操作を実行するコールスタックを表示するトランザクションレポートの生成を有効にするフラグ。Enable Transaction Analysis 機能は、Spring Data JPA と、SQL ステートメント実行用の従来の 注記 enableTransactionAnalysis はテクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。 |
--excludePackages |
評価から除外するパッケージのスペース区切りの一覧。たとえば、 |
--excludeTags |
除外するタグのスペースで区切られたリスト。指定されている場合は、これらのタグを持つルールは処理されません。タグの全リストを表示するには、 |
--explodedApp | 指定された入力ディクショナリーに 1 つののアプリケーションのソースファイルが含まれていることを示すフラグ。 |
--exportCSV |
レポートデータをローカルファイルシステムの CSV ファイルにエクスポートするフラグ。MTA は、 |
--exportSummary |
MTA に、出力ディレクトリーに |
--exportZipReport |
この引数により、出力フォルダーに |
--help | MTA ヘルプメッセージを表示します。 |
--immutableAddonDir | 指定したディレクトリーを、読み取り専用のアドオンリポジトリーとして追加します。 |
--includeTags |
使用するタグのスペースで区切られたリスト。指定されると、これらのタグを持つルールのみが処理されます。タグの全リストを表示するには、 |
--input | 分析する 1 つ以上のアプリケーションを含むファイルまたはディレクトリーへのパスのスペースで区切られたリスト。この引数は必須です。 |
--install |
インストールするアドオンを指定します。構文は |
--keepWorkDirs | グラフデータベースやデプロイメントされたアーカイブファイルなどの一時作業ファイルを削除しないように MTA に指示するフラグ。これはデバッグに役立ちます。 |
--legacyReports | 新しい形式のレポートではなく古い形式のレポートを生成するように MTA に指示するフラグ。 |
--list | インストールされたアドオンをリスト表示するフラグ。 |
--listSourceTechnologies | 利用可能なすべてのソーステクノロジーをリスト表示するフラグ。 |
--listTags | 使用可能なタグをすべて表示するフラグ。 |
--listTargetTechnologies | 利用可能なすべてのターゲットテクノロジーをリスト表示するフラグ。 |
--mavenize |
アプリケーションの構造および内容に基づいて Maven プロジェクトディレクトリー構造を作成するフラグ。これにより、適切な Java EE API とプロジェクトモジュール間の正しい依存関係を使用して |
--mavenizeGroupId |
|
--online | フラグは、それを必要とする機能のネットワークアクセスを許可します。現在、外部リソースに対する XML スキーマのみの検証は、インターネットアクセスに依存します。これには、パフォーマンスの低下があることに注意してください。 |
--output | MTA が生成したレポート情報を出力するディレクトリーへのパスを指定します。 |
--overwrite |
重要 重要な情報を含むレポート出力ディレクトリーを上書きしないでください。 |
--packages | MTA によって評価されるパッケージのスペース区切りのリスト。この引数を使用することは強く推奨されます。 |
--remove |
指定したアドオンを削除します。構文は |
--skipReports |
HTML レポートが生成されないことを示すフラグ。この引数の一般的な用途は、 |
--source |
移行元の 1 つ以上のソーステクノロジー、サーバー、プラットフォーム、またはフレームワークのスペース区切りのリスト。この引数は、 |
--sourceMode | 評価するアプリケーションに、コンパイルされたバイナリーではなくソースファイルが含まれていることを示すフラグ。sourceMode 引数は廃止されました。そのため、指定する必要がなくなりました。MTA は、提示された入力を直感的に処理できます。さらに、プロジェクトソースフォルダーは、同じ分析実行内でバイナリー入力を使用して分析できます。 |
--target |
移行先の 1 つ以上のターゲットテクノロジー、サーバー、プラットフォーム、またはフレームワークのスペース区切りのリスト。この引数は、 |
--userIgnorePath |
|
--userLabelsDirectory |
MTA がカスタムターゲットランタイムラベルを探す場所を指定します。値には、複数または単数のラベルファイルを含むディレクトリーを使用できます。ターゲットランタイムラベルファイルでは、 |
--userRulesDirectory |
|
--version | MTA バージョンを表示します。 |
--skipSourceCodeReports | このオプションは、アプリケーション分析レポートの生成時に ソースコードレポート の生成をスキップします。アプリケーション分析に表示されるソースコード情報が心配な場合は、この詳細オプションを使用します。 |
A.1.1. 入力の指定
分析する 1 つ以上のアプリケーションを含むファイルまたはディレクトリーへのパスのスペースで区切られたリスト。この引数は必須です。
使用方法
--input <INPUT_ARCHIVE_OR_DIRECTORY> [...]
--input
引数に指定された入力ファイルタイプがファイルであるかディクショナリーであるかに応じて、指定された追加の引数に応じて次のように評価されます。
- ディレクトリー
--explodedApp --sourceMode 引数なし ディレクトリーは 1 つのアプリケーションとして評価されます。
ディレクトリーは 1 つのアプリケーションとして評価されます。
各サブディレクトリーはアプリケーションとして評価されます。
- ファイル
--explodedApp --sourceMode 引数なし 引数は無視されます。ファイルは 1 つのアプリケーションとして評価されます。
ファイルは圧縮プロジェクトとして評価されます。
ファイルは 1 つアプリケーションとして評価されます。
A.1.2. 出力ディレクトリーの指定
MTA が生成したレポート情報を出力するディレクトリーへのパスを指定します。
使用方法
--output <OUTPUT_REPORT_DIRECTORY>
-
省略すると、レポートは
<INPUT_ARCHIVE_OR_DIRECTORY>.report
ディレクトリーに生成されます。 出力ディレクトリーが存在する場合は、次のメッセージが表示されます (デフォルトは N)。
Overwrite all contents of "/home/username/<OUTPUT_REPORT_DIRECTORY>" (anything already in the directory will be deleted)? [y,N]
ただし、--overwrite
引数を指定すると、MTA はディレクトリーの削除と再作成を続行します。詳細は、この引数の説明を参照してください。
A.1.3. ソーステクノロジーの設定
移行元の 1 つ以上のソーステクノロジー、サーバー、プラットフォーム、またはフレームワークのスペース区切りのリスト。この引数は、--target
引数とともに、使用されるルールセットを判断するのに役立ちます。--listSourceTechnologies
引数を使用して、利用可能なソースをリスト表示します。
使用方法
--source <SOURCE_1> <SOURCE_2>
--source
引数は、Maven バージョン範囲の構文 に続くバージョンサポートを提供するようになりました。これにより、指定されたバージョンに一致するルールセットのみを実行するように MTA が指示されます。例: --source eap:5
JBoss EAP に移行する場合は、バージョン (例: eap:6
) を指定してください。eap
のみを指定すると、移行パスに関連しないものを含め、すべてのバージョンの JBoss EAP にルールセットが実行されます。
JBoss EAP バージョンに適した Migration Toolkit for Applications の概要 の サポートされる移行パス を参照してください。
A.1.4. ターゲットテクノロジーの設定
移行先の 1 つ以上のターゲットテクノロジー、サーバー、プラットフォーム、またはフレームワークのスペース区切りのリスト。この引数は、--source
引数とともに、使用されるルールセットを判断するのに役立ちます。このオプションを指定しないと、ターゲットを選択するように求められます。--listTargetTechnologies
引数を使用して、利用可能なターゲットをリスト表示します。
使用方法
--target <TARGET_1> <TARGET_2>
--target
引数は、Maven バージョン範囲の構文 に続くバージョンサポートを提供するようになりました。これにより、指定されたバージョンに一致するルールセットのみを実行するように MTA が指示されます。例: --target eap:7
JBoss EAP に移行する場合は、必ずバージョンをターゲットに指定してください (例: eap:6
)。eap
のみを指定すると、移行パスに関連しないものを含め、すべてのバージョンの JBoss EAP にルールセットが実行されます。
JBoss EAP バージョンに適した Migration Toolkit for Applications の概要 の サポートされる移行パス を参照してください。
A.1.5. パッケージの選択
MTA によって評価されるパッケージのスペース区切りのリスト。この引数を使用することは強く推奨されます。
使用方法
--packages <PACKAGE_1> <PACKAGE_2> <PACKAGE_N>
-
多くの場合、関心があるのは、カスタムアプリケーションクラスパッケージの評価で、標準の Java EE パッケージやサードパーティーのパッケージではありません。
<PACKAGE_N>
引数はパッケージ接頭辞で、すべてのサブパッケージがスキャンされます。たとえば、パッケージcom.mycustomapp
およびcom.myotherapp
をスキャンするには、コマンドラインで--packages com.mycustomapp com.myotherapp
引数を使用します。 -
org.apache
などの標準の Java EE サードパーティーソフトウェアにパッケージ名を指定することはできますが、通常は移行作業に影響しないため、追加しないことが推奨されます。
--packages
引数を省略すると、アプリケーションのすべてのパッケージがスキャンされ、パフォーマンスに影響を及ぼす可能性があります。