本文介绍了Java开发人员如何通过GitHub Copilot在Copilot 编码代理中实现应用程序的现代化。 代理可以在后台独立工作,以完成现代化任务,就像人类开发人员一样。 开发人员可以通过问题或拉取请求委托任务,代理在云中执行任务,从而帮助团队高效地完成整个现代化过程。
注释
Copilot编码代理适用于 GitHub Copilot Pro、GitHub Copilot Pro+、GitHub Copilot Business 和 GitHub Copilot Enterprise 计划。 代理在所有存储在GitHub上的代码仓库中可用,但已管理的用户帐户拥有的代码仓库,以及已明确禁用的代码仓库除外。
支持的方案:
-
升级您的 Java 应用程序 – 例如:
Upgrade this project to the latest Java version。 - 将您的Java应用程序迁移到Azure – 使用为Java开发人员准备的GitHub Copilot现代化预定义任务中列出的任务。
-
将Java应用程序部署到Azure - 例如:
Deploy this application to Azure。
先决条件
- 已配置 Copilot 编码代理
- GitHub Copilot 的 Pro、Pro+、Business 或 Enterprise 订阅
- GitHub存储库
注释
Azure帐户仅用于将资源部署到Azure,在使用GitHub Copilot现代化进行代码更改时不需要。
开始
使用以下步骤开始使用Copilot编码代理:
转到要现代化的目标存储库的 “设置” 部分。 必须是此存储库的管理员。
选择Copilot,然后选择 Coding Agent。
在“模型上下文协议”(MCP)部分中的 MCP 配置下,手动添加以下配置,然后选择“保存配置”
{ "mcpServers": { "app-modernization": { "type": "local", "command": "npx", "tools": [ "*" ], "args": [ "-y", "@microsoft/github-copilot-app-modernization-mcp-server" ] } } }GitHub的截图,显示Copilot编码代理的MCP配置。 (可选)如果需要环境变量,请在设置中的 Environment>Copilot 下设置它们。 当用户首次在此存储库中调用代理任务时,会自动初始化这些环境变量。
打开右上角的 “代理 ”面板并输入提示。 输入提示后,Copilot启动一个新会话并打开新的拉取请求,该请求显示在提示框下面的列表中。 当Copilot完成任务时,它会将你添加为审阅者,进而触发通知。
可以在下一部分找到示例提示。
升级Java应用程序
若要将Java应用程序升级到较新的运行时或框架版本,请运行以下示例提示。 此提示有助于确保项目与最新的平台功能和安全更新保持一致。
Upgrade this project to JDK 21 and Spring Boot 3.5
以下步骤说明了升级过程:
将Java应用程序迁移到Azure
若要将Java应用程序迁移到Azure,请描述编码代理的迁移方案,如以下示例提示所示。 有关预定义迁移任务的详细信息,请参阅为Java开发人员GitHub Copilot现代化定义的任务。
Run migration task for scenario Migrate Cassandra integration to Azure SDK using Managed Identity
以下步骤演示了迁移过程:
将Java应用程序部署到Azure
升级或迁移应用程序后,可以使用以下提示直接从编码代理部署它:
Deploy this application to Azure
可以按照前面所示的部署步骤进行升级和迁移 - 整个过程保持一致。
提供反馈
如果对 GitHub Copilot 智能体有任何反馈,在 github-copilot-appmod 存储库上创建问题。