このクイックスタートでは、GitHub Copilot モダン化を使用して Java プロジェクトを評価および移行する方法について説明します。 このクイック スタートでは、拡張機能をインストールして構成し、サンプル プロジェクトを評価して移行します。 たとえば、定義済みのタスクを使用して、ユーザー名とパスワードの代わりに Azure マネージド ID を使用するように Azure SQL データベース接続を更新します。
次のビデオでは、GitHub Copilot モダン化で AppCAT を使用して、Azure への移行のために Java プロジェクトを評価する方法を示します。
Prerequisites
- アクティブなサブスクリプションを持つ Azure アカウント。 無料で作成できます。
- 任意のプランでアクティブな GitHub Copilot サブスクリプションを持つ GitHub アカウント。
-
Visual Studio Code の最新バージョン。 バージョン 1.106 以降である必要があります。
- Visual Studio Code の GitHub Copilot。 セットアップ手順については、「 Visual Studio Code で GitHub Copilot を設定する」を参照してください。 必ず Visual Studio Code 内で GitHub アカウントにサインインしてください。
- GitHub Copilot 近代化。 インストール後に Visual Studio Code を再起動します。
- Java 21 以降。
- Java プロジェクトをビルドするための Maven または Gradle 。
注
Gradle を使用している場合は、Gradle ラッパー バージョン 5 以降のみがサポートされます。 Kotlin ドメイン固有言語 (DSL) はサポートされていません。
JDK と依存関係のバージョンをアップグレードする
JDK のバージョンは、2 つの方法でアップグレードできます。 どちらの方法でも、Visual Studio Code の GitHub Copilot モダン化 ウィンドウが使用されます。このウィンドウはサイドバーからアクセスできます。
JDK バージョンをアップグレードする方法の 1 つは、クイック スタート セクションで [ランタイムのアップグレード] と [フレームワーク] を選択することです。 もう 1 つの方法は、[TASKS - Upgrade Tasks]\(タスク - アップグレード タスク\) セクションでアップグレードされた Java ランタイム タスクを実行することです。 詳細については、「 クイック スタート: GitHub Copilot モダン化を使用して Java プロジェクトをアップグレードする」を参照してください。
Spring フレームワークまたはサードパーティの依存関係をアップグレードするには、[タスク - アップグレード タスク] セクションで Java Framework のアップグレード タスクを実行します。 詳細については、「 GitHub Copilot モダン化を使用した Java フレームワークまたはサード パーティの依存関係のアップグレード」を参照してください。
クラウドの準備状況を評価する
ソリューション評価を使用して移行プロセスを開始するには、次の手順に従います。 この評価は、クラウドの準備の課題とその影響を理解するのに役立ちます。 また、推奨されるソリューションも提供します。 ソリューションの推奨事項には、Azure リソースの設定、構成の追加、コードの変更に関する参照が含まれています。
Java 移行コパイロットサンプル リポジトリを複製し、source ブランチをチェックアウトします。
Visual Studio Code で、サンプル リポジトリの mi-sql-public-demo プロジェクト フォルダーを開きます。
サイドバーで、GitHub Copilot モダン化ウィンドウを選択し、QUICKSTART セクションで [評価の開始] または [評価ダッシュボードを開く] を選択します。
[推奨される評価] を選択し、[クラウドの準備] ドメインを選択し、[OK] を選択して評価を開始します。
分析が完了すると、最新化評価者が 評価レポート を開き、クラウドの準備の問題の分類されたビューが表示されます。
概要レポートを確認するときは、問題のデータベース 移行 (Microsoft SQL) の下にあるソリューションの一覧から [Azure SQL Database への移行 (Spring)] を選択できます。 次に、[ タスクの実行 ] を選択して、コード修復ステージに移動します。
Prerequisites
- アクティブなサブスクリプションを持つ Azure アカウント。 無料で作成できます。
- 任意のプランでアクティブな GitHub Copilot サブスクリプションを持つ GitHub アカウント。
- 最新バージョンの IntelliJ IDEA。 バージョン 2023.3 以降である必要があります。
- GitHub Copilot。 バージョン 1.5.59 以降である必要があります。 詳細については、「 IntelliJ IDEA で GitHub Copilot を設定する」を参照してください。 IntelliJ IDEA 内の GitHub アカウントに必ずサインインしてください。
- GitHub Copilot 近代化。 インストール後に IntelliJ IDEA を再起動します。 GitHub Copilot がインストールされていない場合は、GitHub Copilot モダン化を直接インストールできます。
- Java 21 以降。
- Java プロジェクトをビルドするための Maven または Gradle 。
注
Gradle を使用している場合は、Gradle ラッパー バージョン 5 以降のみがサポートされます。 Kotlin ドメイン固有言語 (DSL) はサポートされていません。
IntelliJ IDEA では、 My Tasks 関数はまだサポートされていません。
JDK と依存関係のバージョンをアップグレードする
JDK のバージョンは、2 つの方法でアップグレードできます。 どちらの方法でも、サイドバーからアクセスできる IntelliJ IDEA の GitHub Copilot モダン化 ウィンドウが使用されます。
JDK バージョンをアップグレードする方法の 1 つは、クイック スタート セクションで [ランタイムのアップグレード] と [フレームワーク] を選択することです。 もう 1 つの方法は、[TASKS - Upgrade Tasks]\(タスク - アップグレード タスク\) セクションでアップグレードされた Java ランタイム タスクを実行することです。 詳細については、「 クイック スタート: GitHub Copilot モダン化を使用して Java プロジェクトをアップグレードする」を参照してください。
Spring フレームワークまたはサードパーティの依存関係をアップグレードするには、[タスク - アップグレード タスク] セクションで Java Framework のアップグレード タスクを実行します。 詳細については、「 GitHub Copilot モダン化を使用した Java フレームワークまたはサード パーティの依存関係のアップグレード」を参照してください。
クラウドの準備状況を評価する
ソリューション評価を使用して移行プロセスを開始するには、次の手順に従います。 この評価は、クラウドの準備の課題とその影響を理解するのに役立ちます。 また、推奨されるソリューションも提供します。 ソリューションの推奨事項には、Azure リソースの設定、構成の追加、コードの変更に関する参照が含まれています。
Java 移行コパイロットサンプル リポジトリを複製し、ソース ブランチにチェックアウトする。
IntelliJ IDEA で、サンプル リポジトリの
mi-sql-public-demoプロジェクト フォルダーを開きます。サイドバーで、GitHub Copilot モダン化ウィンドウを選択します。ここで、[評価] セクションで [評価の開始] または [評価の実行] を選択できます。
エージェント モードの GitHub Copilot チャット ウィンドウが開き、モダン化評価担当者を呼び出して最新化評価を実行します。 [続行] を選択して確定します。
モダン化評価者が
appcat.logを開くようになりました。 このファイルには、アプリの評価を実行する AppCAT を実行するためのログが表示されます。 [ 続行] を選択してもう一度確認します。最新化評価者は、最初にローカル環境を検証します。 AppCAT とその依存関係がインストールされていない場合、エージェントはそれらをインストールするのに役立ちます。 インストール後、エージェントは AppCAT を呼び出して現在のプロジェクトを評価します。 この手順が完了するまでに数分かかる場合があります。
分析が完了すると、最新化評価者は、開かれた 評価レポートでクラウドの準備の問題の分類されたビューを生成します。
概要レポートを確認する場合は、問題のデータベース 移行 (Microsoft SQL) の下にあるソリューションの一覧から [Azure SQL Database への移行 (Spring)] を選択できます。 次に、[ タスクの実行 ] を選択して、コード修復ステージに移動します。
定義済みタスクを適用する
移行の場合、Copilot には、Azure への移行時に直面する可能性がある一般的な移行シナリオに関する定義済みのタスクが用意されています。 たとえば、 mi-sql-public-demo サンプルを使用すると、 データベース移行 (Microsoft SQL) タスクは、ユーザー名とパスワードではなく Azure マネージド ID を使用するように Azure SQL データベース接続を変更します。
定義済みのタスクを適用するには、次の手順に従います。
評価レポートで、[タスクの実行] を選択します。 Copilot チャット ウィンドウが開き、エージェント モードが選択されています。
Copilot エージェントは GitHub Copilot の最新化にさまざまなツールを使用します。各ツールを続行するには確認が必要な場合があります。 エージェントは最初に
plan.mdとprogress.mdを生成します。 必要に応じて、plan.mdを確認し、そこで変更を加えることができます。続行 と手動で入力して確認し、移行プロセスを開始します。
コードを変更する前に、エージェントはバージョン管理システムの状態を確認し、移行のために新しいブランチをチェックアウトします。
[続行] を繰り返し選択または入力してツールまたはコマンドの使用を確認し、コードの変更が完了するまで待ちます。
注
Visual Studio Code では、GitHub Copilot モダン化では、Java コードを更新して Azure に移行するときに最適な結果を得るために、既定で Claude Sonnet 4.5 で AppModernization カスタム エージェントが使用されます。 Sonnet 4.5 が使用できない場合は、 auto モデルにフォールバックします。 [エージェント] メニューから [カスタム エージェントの構成] を選択して、model設定を変更するようにカスタム エージェントを構成できます。 または、チャット ウィンドウの言語モデル ピッカーを使用して、現在のチャット セッションのモデルを切り替えることができます。
検証の反復
コードの変更が完了したら、手動で入力して 検証を続行 し、反復ループを修正します。 このループには、次の 5 つの部分が含まれます。
-
Validate-CVEsツールを適用します。 このツールは、現在の依存関係の一般的な脆弱性と露出 (CVE) を検出し、修正しようとします。 -
Build-Projectツールを適用します。 このツールは、ビルド エラーの解決を試みます。 -
Consistency-Validationツールを適用します。 このツールは、コードの機能の一貫性を分析します。 -
Run-Testツールを適用します。 このツールは、単体テストの失敗についてプロジェクトを分析し、それらを修正するための計画を自動的に生成します。Run-Testツールは、単体テストを繰り返し実行し、エラーを修正します。 -
Completeness-Validationツールを適用します。 このツールは、最初のコード移行で見逃した移行項目をキャッチし、修正します。
すべてのプロセスが完了したら、「 続行 」と入力して、最後の手順として移行の概要を生成します。 コードの変更を確認し、[ 保持] を選択して確認します。
単体テスト ケースの生成
単体テスト ケースを生成するには、次の手順に従います。
サイドバーで、 GitHub Copilot モダン化 ウィンドウを選択します。
[タスク] セクションで、[品質] と [セキュリティ タスク] を開き、[単体テスト ケースの生成] を選択します。
エージェントは単体テストを生成し、生成前と生成後にテスト結果を表示する TestReport を作成します。 詳細については、「 クイック スタート: GitHub Copilot モダン化を使用して単体テストを生成する」を参照してください。