Java 升级功能介绍与 FAQ #
☕ Java 升级功能介绍 #
Amazon Q Developer 提供强大的 Java 代码升级功能,帮助开发者自动将 Java 项目升级到更新的版本,减少手动迁移的工作量。
重要变更:原 Amazon Q Developer 中的 .NET、Mainframe、VMWare 三大功能已经分离成为新的服务 AWS Transform。Amazon Q Developer 目前专注于 Java Transform 功能。
Amazon Q Developer 对于 Java 升级的功能,还提供了一个专用的命令行工具 qct-cli (不是 q cli 或 aws cli)。如果您不希望 IDE 中的 Java 升级占用本地过多资源,可以在服务器或一些自动化环境中使用 qct-cli 实现 Java 代码升级。
qct-cli 是一个基于 Python 编写的程序,需要独立安装,安装与登录流程详见 官方文档。目前 qct-cli 仅支持 macOS/Linux,如果您需要在 Windows 上完成 Java 升级,请继续使用 IDE 插件的方式。
详见完整 官方文档
Amazon Q Developer 的 IDE 插件内置了 Java 升级的功能,在 IDE 插件的聊天窗口中,使用 /transform
命令启动 Java 代码升级:
/transform
支持的升级路径:
- Java 8 → Java 17
- Java 8 → Java 21
- Java 11 → Java 17
- Java 11 → Java 21
- Java 17 → Java 21
⚙️ 升级流程 #
1. 项目分析
- 扫描项目结构
- 分析依赖关系
- 识别需要升级的代码
3. 生成差异
显示所有变更
提供详细说明
支持逐项审查
2. 代码转换
- 自动修改语法
- 更新 API 调用
- 处理废弃功能
4. 应用变更
用户确认后应用
保持代码逻辑不变
生成升级报告
💰 费用模式 #
包含在订阅中:
- 每月 4,000 行代码升级额度(账号级别共享)
- 所有核心升级功能
超额费用:
- 超出月度额度后:$0.003/行
- 只有成功生成 DIFF 后才计费
- 失败或取消的升级不产生费用
❓ Java 升级常见问题 #
Q. 升级 Java 时,如果不在 官方支持列表中的依赖会升级吗? #
不会。特别是如果一些依赖本身就不支持新版本 Java,那么这个升级可能会失败。
注意: 在使用 Java 升级功能前,请确保您的项目依赖都支持目标 Java 版本,否则升级可能会失败。
Q. 升级 Java 时, 官方支持列表中的依赖会如何升级? #
如果您指定了依赖的目标版本( 使用 IDE 插件或 使用 qct-cli)则会升级到您指定的版本。
如果您没有指定目标版本,则升级到兼容的最新版本。
Q. $19/月/人的订阅费用之外,Java 升级还有哪些费用? #
Amazon Q Developer 采用 $19/月/人的固定订阅模式,包含所有核心功能和每人每月 4,000 行 Java 代码升级额度(账号共享,比如组织内有 10 个人,那么这 10 个人会共享 40,000 行的额度)。
唯一的额外费用: 当 Java 代码升级超出额度时,按 $0.003/行收取超额费用。
Q. Java 升级功能的每月 4000 行代码额度是否支持账号级别共享? #
支持。详情请看 定价文档。
Q. Java 升级功能运行失败或者中途取消会产生费用吗? #
不会。只有当升级完毕,看到 DIFF 后才会产生费用,无论是否接受更改。