付録A 参考資料


A.1. MTR コマンドライン引数

以下は、利用可能な MTR コマンドライン引数の詳細な説明です。

注記

スクリプトから実行した場合など、プロンプトを表示せずに MTR コマンドを実行するには、以下の引数を使用する必要があります。

  • --batchMode
  • --overwrite
  • --input
  • --target
表A.1 MTR CLI 引数
引数説明

--additionalClassPath

クラスパスに追加する追加の JAR ファイルまたはディレクトリーのスペース区切りリスト。逆コンパイルやその他の解析に使用できます。

--addonDir

指定したディレクトリーをカスタムアドオンリポジトリーとして追加します。

--analyzeKnownLibraries

アプリケーション内に埋め込まれた既知のソフトウェアアーティファクトを分析するフラグ。デフォルトでは、MTR はアプリケーションコードのみを分析します。

注記

このオプションを使用すると実行時間が長くなり、多数の移行問題が報告される可能性があります。

--batchMode

MTR を非対話モードで実行すべきように指定するフラグ。確認をプロンプトなしで実行します。このモードは、コマンドラインに渡さないパラメーターのデフォルト値を取ります。

--debug

デバッグモードで MTR を実行するフラグ。

--disableTattletale

Tattletale レポートの生成を無効にするフラグ。enableTattletaledisableTattletale の両方が true に設定されていると、disableTattletale は無視されます。また、Tatletale レポートは引き続き生成されます。

--discoverPackages

入力バイナリーアプリケーションで利用可能なパッケージをすべて表示するフラグ。

--enableClassNotFoundAnalysis

クラスパスで利用できない Java ファイルの分析を有効にするフラグ。分析時に一部のクラスが利用できない場合は、これを使用しないでください。

--enableCompatibleFilesReport

Compatible Files レポートの生成を有効にするフラグ。問題が検出されない状態ですべてのファイルを処理するため、このレポートには大規模なアプリケーションの処理に時間がかかる場合があります。

--enableTattletale

各アプリケーションの Tattletale レポートの生成を有効にするフラグ。このオプションは、eap が含まれるターゲットにある場合にデフォルトで有効になります。enableTattletaledisableTattletale の両方が true に設定されていると、disableTattletale は無視されます。また、Tatletale レポートは引き続き生成されます。

--enableTransactionAnalysis

[テクノロジープレビュー] リレーショナルデータベーステーブルで操作を実行するコールスタックを表示するトランザクションレポートの生成を有効にするフラグ。Enable Transaction Analysis 機能は、Spring Data JPA と、SQL ステートメント実行用の従来の preparedStatement() メソッドをサポートします。Hibernate などの ORM フレームワークはサポートしていません。

注記

enableTransactionAnalysis はテクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は実稼働環境でこれらを使用することを推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。

--excludePackages

評価から除外するパッケージのスペース区切りの一覧。たとえば、com.mycompany.commonutilities と入力すると、パッケージ名が com.mycompany.commonutilities で始まるすべてのクラスが除外されます。

--excludeTags

除外するタグのスペースで区切られた一覧。指定されている場合は、これらのタグを持つルールは処理されません。タグの全一覧を表示するには、--listTags 引数を使用します。

--explodedApp

指定された入力ディクショナリーに 1 つののアプリケーションのソースファイルが含まれていることを示すフラグ。

--exportCSV

レポートデータをローカルファイルシステムの CSV ファイルにエクスポートするフラグ。MTR は、--output 引数で指定されたディレクトリーにファイルを作成します。CSV ファイルは、データの操作および分析のためにスプレッドシートプログラムにインポートできます。

--exportSummary

MTR に、出力ディレクトリーに analysisSummary.json エクスポートファイルを生成するよう指示するフラグ。このファイルには、分析された各アプリケーションの分析概要情報 (カテゴリー別のインシデント数とストーリーポイント、分析されたアプリケーションに関連付けられたすべてのテクノロジータグなど) が含まれています。

--exportZipReport

この引数により、出力フォルダーに reports.zip ファイルが作成されます。ファイルには分析出力 (通常はレポート) が含まれます。要求に応じて、CSV エクスポートファイルを含めることもできます。

--help

MTR ヘルプメッセージを表示します。

--immutableAddonDir

指定したディレクトリーを、読み取り専用のアドオンリポジトリーとして追加します。

--includeTags

使用するタグのスペースで区切られたリスト。指定されると、これらのタグを持つルールのみが処理されます。タグの全一覧を表示するには、--listTags 引数を使用します。

--input

分析する 1 つ以上のアプリケーションを含むファイルまたはディレクトリーへのパスのスペースで区切られたリスト。この引数は必須です。

--install

インストールするアドオンを指定します。構文は <GROUP_ID>:<ARTIFACT_ID>[:<VERSION>] です。たとえば、--install core-addon-x または --install org.example.addon:example:1.0.0 です。

--keepWorkDirs

グラフデータベースや展開されたアーカイブファイルなどの一時作業ファイルを削除しないように MTR に指示するフラグ。これはデバッグに役立ちます。

--legacyReports

新しい形式のレポートではなく古い形式のレポートを生成するように MTR に指示するフラグ。

--list

インストールされたアドオンを一覧表示するフラグ。

--listSourceTechnologies

利用可能なすべてのソーステクノロジーを一覧表示するフラグ。

--listTags

使用可能なタグをすべて表示するフラグ。

--listTargetTechnologies

利用可能なすべてのターゲットテクノロジーを一覧表示するフラグ。

--mavenize

アプリケーションの構造および内容に基づいて Maven プロジェクトディレクトリー構造を作成するフラグ。これにより、適切な Java EE API とプロジェクトモジュール間の正しい依存関係を使用して pom.xml ファイルが作成されます。--mavenizeGroupId オプションも参照してください。

--mavenizeGroupId

--mavenize オプションとともに使用すると、生成されるすべての pom.xml ファイルは <groupId> に提供された値を使用します。この引数を省略すると、MTR はアプリケーションに基づいて適切な <groupId> を判別しようとします。または、デフォルトでは com.mycompany.mavenized に設定されます。

--online

フラグは、それを必要とする機能のネットワークアクセスを許可します。現在、外部リソースに対する XML スキーマのみの検証は、インターネットアクセスに依存します。これには、パフォーマンスの低下があることに注意してください。

--output

MTR が生成したレポート情報を出力するディレクトリーへのパスを指定します。

--overwrite

--output で指定された既存の出力ディレクトリーを強制的に削除するためのフラグ。この引数を指定せず、-output ディレクトリーが存在する場合は、内容を上書きするかどうかを選択するように求められます。

重要

重要な情報を含むレポート出力ディレクトリーを上書きしないでください。

--packages

MTR によって評価されるパッケージのスペース区切りの一覧。この引数を使用することは強く推奨されます。

--remove

指定したアドオンを削除します。構文は <GROUP_ID>:<ARTIFACT_ID>[:<VERSION>] です。たとえば、--remove core-addon-x または --remove org.example.addon:example:1.0.0 です。

--skipReports

HTML レポートが生成されないことを示すフラグ。この引数の一般的な用途は、--exportCSV を使用してレポートデータを CSV ファイルにエクスポートすることです。

--source

移行元の 1 つ以上のソーステクノロジー、サーバー、プラットフォーム、またはフレームワークのスペース区切りの一覧。この引数は、--target 引数とともに、使用されるルールセットを判断するのに役立ちます。--listSourceTechnologies 引数を使用して、利用可能なソースを一覧表示します。

--sourceMode

評価するアプリケーションに、コンパイルされたバイナリーではなくソースファイルが含まれていることを示すフラグ。sourceMode 引数は廃止されました。そのため、指定する必要がなくなりました。MTR は、提示された入力を直感的に処理できます。さらに、プロジェクトソースフォルダーは、同じ分析実行内でバイナリー入力を使用して分析できます。

--target

移行先の 1 つ以上のターゲットテクノロジー、サーバー、プラットフォーム、またはフレームワークのスペース区切りの一覧。この引数は、--source 引数とともに、使用されるルールセットを判断するのに役立ちます。--listTargetTechnologies 引数を使用して、利用可能なターゲットを一覧表示します。

--userIgnorePath

${user.home}/.mtr/ignore/ の他に、無視すべきファイルを MTR が特定できるように場所を指定します。

--userLabelsDirectory

MTR がカスタムターゲットランタイムラベルを探す場所を指定します。値には、複数または単数のラベルファイルを含むディレクトリーを使用できます。ターゲットランタイムラベルファイルでは、.windup.label.xml の接尾辞を使用する必要があります。同梱されている Target Runtime Labels は $MTR_HOME/rules/migration-core/core.windup.label.xml 内で定義されます。

--userRulesDirectory

<MTR_HOME>/rules/ および ${user.home}/.mtr/rules/ に加えて、MTR がカスタム MTR ルールを探す場所を指定します。値は、単数または複数のルールセットファイルを含むディレクトリーです。ルールセットファイルでは、.windup.xml の接尾辞を使用する必要があります。

--version

MTR バージョンを表示します。

--skipSourceCodeReports

このオプションは、アプリケーション分析レポートの生成時に ソースコードレポート の生成をスキップします。アプリケーション分析に表示されるソースコード情報が心配な場合は、この詳細オプションを使用します。

A.1.1. 入力の指定

分析する 1 つ以上のアプリケーションを含むファイルまたはディレクトリーへのパスのスペースで区切られたリスト。この引数は必須です。

使用方法

--input <INPUT_ARCHIVE_OR_DIRECTORY> [...]

--input 引数に指定された入力ファイルタイプがファイルであるかディクショナリーであるかに応じて、指定された追加の引数に応じて次のように評価されます。

ディレクトリー
--explodedApp--sourceMode引数なし

ディレクトリーは 1 つのアプリケーションとして評価されます。

ディレクトリーは 1 つのアプリケーションとして評価されます。

各サブディレクトリーはアプリケーションとして評価されます。

ファイル
--explodedApp--sourceMode引数なし

引数は無視されます。ファイルは 1 つのアプリケーションとして評価されます。

ファイルは圧縮プロジェクトとして評価されます。

ファイルは 1 つアプリケーションとして評価されます。

A.1.2. 出力ディレクトリーの指定

MTR が生成したレポート情報を出力するディレクトリーへのパスを指定します。

使用方法

--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 引数を指定すると、MTR はディレクトリーの削除と再作成を続行します。詳細は、この引数の説明を参照してください。

A.1.3. ソーステクノロジーの設定

移行元の 1 つ以上のソーステクノロジー、サーバー、プラットフォーム、またはフレームワークのスペース区切りの一覧。この引数は、--target 引数とともに、使用されるルールセットを判断するのに役立ちます。--listSourceTechnologies 引数を使用して、利用可能なソースを一覧表示します。

使用方法

--source <SOURCE_1> <SOURCE_2>

--source 引数は、Maven バージョン範囲の構文 に続くバージョンサポートを提供するようになりました。これにより、指定されたバージョンに一致するルールセットのみを実行するように MTR が指示されます。たとえば --source eap:5 です。

警告

JBoss EAP に移行する場合は、バージョン (例: eap:6) を指定してください。eap のみを指定すると、移行パスに関連しないものを含め、すべてのバージョンの JBoss EAP にルールセットが実行されます。

JBoss EAP バージョンに適した Migration Toolkit for Runtimes の概要サポートされる移行パス を参照してください。

A.1.4. ターゲットテクノロジーの設定

移行先の 1 つ以上のターゲットテクノロジー、サーバー、プラットフォーム、またはフレームワークのスペース区切りの一覧。この引数は、--source 引数とともに、使用されるルールセットを判断するのに役立ちます。このオプションを指定しないと、ターゲットを選択するように求められます。--listTargetTechnologies 引数を使用して、利用可能なターゲットを一覧表示します。

使用方法

--target <TARGET_1> <TARGET_2>

--target 引数は、Maven バージョン範囲の構文 に続くバージョンサポートを提供するようになりました。これにより、指定されたバージョンに一致するルールセットのみを実行するように MTR が指示されます。たとえば、--target eap:7 です。

警告

JBoss EAP に移行する場合は、必ずバージョンをターゲットに指定してください (例: eap:6)。eap のみを指定すると、移行パスに関連しないものを含め、すべてのバージョンの JBoss EAP にルールセットが実行されます。

JBoss EAP バージョンに適した Migration Toolkit for Runtimes の概要サポートされる移行パス を参照してください。

A.1.5. パッケージの選択

MTR によって評価されるパッケージのスペース区切りの一覧。この引数を使用することは強く推奨されます。

使用方法

--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 引数を省略すると、アプリケーションのすべてのパッケージがスキャンされ、パフォーマンスに影響を及ぼす可能性があります。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.