Visual Studio Code 拡張機能ガイド
Visual Studio Code 用 Migration Toolkit for Runtimes エクステンションでアプリケーションを分析し、移行の問題を特定し、解決します。
概要
多様性を受け入れるオープンソースの強化
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 はじめに
1.1. Microsoft Visual Studio Code の MTR 拡張機能について
Microsoft Visual Studio Code 用の Migration Toolkit for Runtimes (MTR) 拡張機能を使用して、アプリケーションを移行およびモダナイズできます。
MTR 拡張機能はカスタマイズ可能なルールセットを使用してプロジェクトを分析し、ソースコード内の問題をマークし、問題を修正するためのガイダンスを提供し、可能な場合は自動コードの置き換えを提供します。
MTR 拡張機能は、Microsoft クラウドでホストされる開発環境である Visual Studio Codespaces とも互換性があります。
1.2. Migration Toolkit for Runtimes
Migration Toolkit for Runtimes とは
Migration Toolkit for Runtimes (MTR) は、Red Hat OpenShift 上のハイブリッドクラウド環境全体で大規模なアプリケーションモダナイゼーションの取り組みを促進します。このソリューションは、採用プロセス全体においてポートフォリオレベルとアプリケーションレベルの両方で理解が得られるので、アプリケーションのインベントリー、評価、分析、および管理を行い、ユーザーインターフェイスを使用して OpenShift への移行をより短い期間で行うことができます。
MTR は、アプリケーションを評価するための基礎として広範にわたる質問リストを使用して、コンテナー化のアプリケーションの準備に必要な難易度、時間、およびその他のリソースを見積もることができるようにします。ステークホルダー間の議論の基礎として評価の結果を使用して、どのアプリケーションがコンテナー化に適しているか、最初に多大な作業が必要なアプリケーション、およびコンテナー化に適していないアプリケーションを判断できます。
MTR は、考慮された各アプリケーションに 1 つ以上のルールセットを適用してアプリケーションを分析し、最新化する前にそのアプリケーションの中でどの特定の行を変更する必要があるかを判断します。
MTR は、プロジェクトソースディレクトリーやアプリケーションアーカイブを含むアプリケーションアーティファクトを検査し、変更を必要とするエリアを強調表示する HTML レポートを作成します。MTR は、以下を含む多くの移行パスをサポートします。
- Red Hat JBoss Enterprise Application Platform の最新リリースへのアップグレード
- Oracle WebLogic または IBM WebSphere Application Server から Red Hat JBoss Enterprise Application Platform への移行
- アプリケーションのコンテナー化とクラウド化
- Java Spring Boot から Quarkus への移行
- OpenJDK 8 から OpenJDK 11 へのアップグレード
- OpenJDK 11 から OpenJDK 17 へのアップグレード
- EAP Java アプリケーションの Azure App Service への移行
- Spring Boot Java アプリケーションの Azure App Service への移行
ユースケースおよび移行パスの詳細は、開発者向け MTR Web ページを参照してください。
Migration Toolkit for Runtimes を使用して移行を単純化する方法
Migration Toolkit for Runtimes は一般的なリソースを探し、アプリケーションを移行する際の既知の問題点を明らかにします。これは、アプリケーションが使用するテクノロジーのハイレベルビューを提供します。
MTR は、移行またはモダナイゼーションパスの評価に関する詳細なレポートを生成します。このレポートは、大規模なプロジェクトに必要な作業を見積もり、関係する作業を減らすのに役立ちます。
第2章 Visual Studio Code 用 MTR 拡張機能のインストール
Visual Studio Code (VS Code) 用 MTR 拡張機能をインストールできます。
前提条件
Java Development Kit(JDK) がインストールされている。MTR は以下の JDK をサポートする。
- OpenJDK 11
- Oracle JDK 11
- 8 GB RAM
-
macOS のインストール:
maxprocの値は2048以上である必要がある。
手順
環境変数
JAVA_HOMEを設定します。$ export JAVA_HOME=jdk11
- VS Code で Activity バーの Extensions アイコンをクリックして、Extensions ビューを開きます。
-
検索フィールドに
Migration Toolkit for Runtimesと入力します。 Migration Toolkit for Runtimes 拡張機能を選択し、Install をクリックします。
MTR 拡張機能アイコン (
) が Activity バーに表示されます。
第3章 MTR 拡張機能を使用したプロジェクトの分析
実行設定を作成し、分析を実行して、MTR 拡張機能でプロジェクトを分析できます。
3.1. MTR 拡張機能インターフェイス
Migration Toolkit for Runtimes (MTR) 拡張機能のインターフェイスは、情報の検索とアクションの実行を容易にするように設計されています。
- 左側のペインに、上部にレポートアイコンが付いたAnalysis Resultsという名前のディレクトリーツリーが表示されます。アイコンをクリックして、ブラウザーで MTR レポートを開きます。レポートアイコンの下には、ツリーの他の要素 (MTR が分析したアプリケーション、使用されるルールセット、分析で検出された問題) です。
- 右上のペインで、分析を設定できます。
- 右下のペインで、ソース、ターゲット、高度なオプションなど、設定の設定が表示されます。このペインで分析の進捗状況を表示できます。分析が完了したら、Open Report ボタンをクリックして MTR レポートを開くことができます。これは、アプリケーションの移行またはモダナイゼーションの前に対処する必要がある問題を記述します。詳細については、CLI ガイド の レポートの確認 を参照してください。
図3.1 MTR 拡張機能インターフェイス

3.2. 実行設定の設定
複数の実行設定を設定して、VS Code にインポートする各プロジェクトに対して実行することができます。
前提条件
-
windup-cli実行可能ファイルがインストールされています。windup-cli実行ファイルは mtr download からダウンロードできます。
手順
-
Extensions ビューで、Activity バーの Migration Toolkit for Runtimes アイコン (
) をクリックします。
- Migration Toolkit for Runtimes の横にある + (プラス記号) をクリックして、実行設定を追加します。
以下の設定フィールドに入力します。
- 名前: 分析設定に意味のある名前を入力するか、デフォルトを受け入れます。
-
cli: cli 実行ファイルへのパスを入力します。たとえば、
$HOME/mtr-cli-1.0.2.GA-redhat-00001/bin/windup-cliです。 入力: Add をクリックして次のいずれかを実行することにより、IDE 内で開いているプロジェクトのパスに設定します。
- 入力ファイルまたはディレクトリーを入力して、Enter を押します。
- Open File Explorer をクリックし、ディレクトリーを選択します。
- ターゲット: 1 つ以上のターゲット移行パスを選択します。
実行設定を右クリックし、Run を選択します。
分析が完了したら、Open Report ボタンをクリックして MTR レポートを開くことができます。これは、アプリケーションの移行またはモダナイゼーションの前に対処する必要がある問題を記述します。詳細については、CLI ガイド の レポートの確認 を参照してください。
第4章 移行の問題の確認および解決
左側のペインで MTR エクステンションで識別される移行の問題を確認し、解決できます。
4.1. 問題の確認
MTR 拡張機能アイコンを使用して、重大度に基づいて問題の優先順位付けができます。また、クイック修正の自動コード置換がある問題を確認することもできます。
手順
- 左側のペインで、実行設定ディレクトリーを選択します。
- そのフォルダーを展開し、各アプリケーションファイルに生成された Hints を表示します。
- ソースコードを表示するヒントを選択します。
- ヒントを右クリックし、View Details を選択して Rule ID およびその他の情報を表示します。
各ヒントの横に表示される以下のアイコンに基づいて、問題の優先順位付けを行います。
-
: 移行を成功させるには、この問題を修正する必要があります。
-
: この問題は、移行時に解決する必要がある場合があります。
-
: 移行については、この問題の修正は任意です。このアイコンは、問題に利用できるクイック修正を示すためにも使用されます。
-
4.2. 問題の解決
以下のいずれかを実行して問題を解決できます。
- クイック修正 の自動コードの置き換えの使用
- ヒントを使用したファイルのコードの編集
Delete または Mark as Complete オプションを使用して、解決された問題を追跡できます。削除済みまたは完了とマークされたファイルは、次回それらを含むプロジェクトを分析する際に再度分析されます。
4.2.1. クイック修正の使用
クイック修正の自動コード置換を使用して、時間を節約し、繰り返し発生する問題を解決する際の一貫性を確保できます。
手順
-
左側のペインで、クイック修正アイコン (
) の問題を右クリックし、Preview Quick Fix を選択します。
- 推奨の修正を受け入れるには、もう一度問題を右クリックし、Apply Quick Fix を選択します。
- オプション: 問題を右クリックし、Mark as Complete または Delete を選択します。
4.2.2. ファイルのコードの編集
VS Code にインポートしたプロジェクトのファイルを編集できます。
手順
- 左側のペインで、問題を右クリックし、Open Code を選択します。
- コードに必要な変更を加え、ファイルを保存します。
- オプション: 問題を右クリックし、Mark as Complete または Delete を選択します。