本文介紹 GitHub Copilot 現代化,一款提供應用程式現代化端對端支援的 AI 助理。
企業在開發週期中經常面臨技術債務。 升級 Java 執行環境、框架與相依性是一項常見但資源密集的任務。 同時,許多組織也希望將其應用程式資產遷移並現代化至雲端。 此流程如下:
- 評估程式碼、組態和相依性的目前狀態
- 規劃 Azure 資源
- 補救問題以成功移轉
基於 GitHub Copilot 代理模式,GitHub Copilot 現代化提供常見升級與遷移場景的預設任務,並融入業界最佳實務,協助在 Azure 上執行應用程式。 同時,它使團隊能夠將自己的編碼標準、組織策略和現有實踐融入現代化流程中。
主要功能一覽
- 應用程式評估和規劃:分析程式碼、配置和相依性。 協助您視覺化現代化程式中的每項任務,從評估到部署。
- 程式碼轉換:建議並套用升級和移轉案例的程式碼補救。
- 建置、修補和測試:確認專案在補救後成功建置,並在需要時套用修正。 執行常見漏洞和暴露 (CVE) 檢查,以減少安全漏洞的暴露。 移轉現有的單元測試並產生新的單元測試,以驗證現代化成果並改善測試涵蓋範圍。
- 容器化和部署:產生 Dockerfile 用於應用程式容器化,及其他部署至 Azure 的成果物,以實現自動化部署。
GitHub Copilot 現代化整合了 GitHub Copilot 的 AI 驅動功能,以自動化複雜的升級步驟。 它支援 Maven 與 Gradle 專案,目標是 Java 版本 8、11、17、21 和 25 之間的升級。 該工具特別關注對使用 Spring Boot 框架的應用程式進行現代化改造。 升級過程讓您保持控制,並通過顯示所有日誌和輸出來確保透明度。
Tip
升級 Java 執行環境只是現代化的一部分。 在舊款 JDK 上表現最佳的 JVM 旗標,可能會在新款 JDK 上過時、棄用,甚至對效能造成損害。 升級後,Azure Javajaz 指令啟動器()可以自動套用針對新 JDK 版本和你的雲端環境的 JVM 旗標,避免過時的調整。 在你的啟動指令碼或 Dockerfile 中,將 java 指令替換為 jaz,即可受益。
使用 應用程式評定 開始您的移轉過程,以取得雲端遷移準備問題的概觀,包括:
- 設定 Azure 資源的指示
- 遵循最佳實務的建議
- 變更應用程式程式碼的建議
在需要修改程式碼的情況下,GitHub Copilot 現代化系統會引導你完成修復步驟。 在此階段,您可以針對常見問題使用預先定義的工作,例如:
- 從密碼型驗證切換至受控識別
- 從 Amazon Web Services (AWS) S3 移至 Azure Blob 儲存體
想了解更多 GitHub Copilot 現代化中可用的預定義任務,請參閱 預定義任務。
在開發過程中,企業通常有嚴格的流程與控制,這正是客製化技能發揮作用的地方。 欲了解更多資訊,請參閱快速入門:創造並應用您自己的技能以實現GitHub Copilot現代化。
自訂技能可以參考從先前已遷移的應用程式中的程式碼提交記錄。 這些技能作為其他應用程式類似問題的修復指南,使 Copilot 能在多個程式碼庫中套用經過驗證的模式。 每一次成功遷移,知識庫都會擴展,加速未來的修復並減少人工作業。
GitHub Copilot 的現代化還包括專門的代理:
- 驗證您的應用程式建置成功
- 透過解決 CVE 來減少技術債務
- 使用單元測試驗證行為完整性
欲了解更多資訊,請參閱 GitHub Copilot 現代化 Java 工具。
現代化不僅僅是升級程式碼,而是為雲端準備應用程式。 無論您是以 Azure App 服務、Azure 容器應用程式、Azure Kubernetes Service (AKS) 或 AKS 自動為目標,Copilot 都能協助您更快、更有信心地到達目的地。