在 IDEA 里装个 AI 助手:Amazon Q Developer 到底好不好用?

在 IDEA 里装个 AI 助手:Amazon Q Developer 到底好不好用?

写 Java 的都在 IntelliJ IDEA 里泡着,代码补全、重构、调试全靠它。但说实话,自带的补全能力到了 2026 年已经显得有点"传统"了。

Amazon Q Developer 是亚马逊云科技推出的 AI 编程助手,支持 JetBrains 全家桶(IntelliJ IDEA、PyCharm、WebStorm、GoLand 等)。不只是代码补全------内联聊天、漏洞扫描、代理式编码、Java 版本升级,一个插件全包了。

这篇从安装到实际写代码,走一遍真实体验。

安装(3 分钟搞定)

1. 安装插件

IDEA → Settings → Plugins → Marketplace → 搜索 "Amazon Q" → Install

装完重启 IDEA,右侧面板多出一个 Amazon Q 图标。

2. 登录

两种方式:

  • 免费版:用 AWS Builder ID 登录,个人开发者免费用
  • 专业版:用 AWS IAM Identity Center 登录,企业级功能
diff 复制代码
免费版限制:
- 代码补全:每月 1000 次调用
- 聊天:每月 100 条消息
- 安全扫描:每月 50 次

专业版($19/用户/月):
- 不限次数
- 可连接私有代码库做定制化建议
- 企业级安全管控

核心功能实测

1. 代码补全------不止补一行

传统补全:你打个 list.,它给你弹方法列表。

Amazon Q 补全:你写个注释 // 读取 S3 文件并解析 JSON,它直接给你生成完整方法,包括异常处理。

java 复制代码
// 读取 S3 文件并解析 JSON
// ↓ Amazon Q 生成
public JsonNode readS3Json(String bucket, String key) {
    S3Client s3 = S3Client.builder()
        .region(Region.US_EAST_1)
        .build();
    GetObjectRequest request = GetObjectRequest.builder()
        .bucket(bucket)
        .key(key)
        .build();
    try (InputStream stream = s3.getObject(request)) {
        ObjectMapper mapper = new ObjectMapper();
        return mapper.readTree(stream);
    } catch (S3Exception e) {
        log.error("S3 读取失败: {}", e.awsErrorDetails().errorMessage());
        throw new RuntimeException("读取 S3 对象失败", e);
    } catch (IOException e) {
        log.error("JSON 解析失败: {}", e.getMessage());
        throw new RuntimeException("解析 JSON 失败", e);
    }
}

多行代码建议的接受率,Amazon Q 在多个公开基准测试里表现突出。

2. 内联聊天------不用切窗口

选中一段代码,按 Cmd+I(Mac)或 Ctrl+I(Windows),直接在代码旁边弹出对话框:

  • "给这个方法加单元测试"
  • "这段代码有性能问题吗"
  • "重构成 Builder 模式"

不用切到浏览器问 ChatGPT,也不用复制粘贴。

3. 安全扫描------写完就查

右键项目 → Amazon Q → Run Security Scan

扫描结果直接标在代码行上:

sql 复制代码
⚠️ 第 23 行:SQL 注入风险
  建议:使用 PreparedStatement 替代字符串拼接

⚠️ 第 45 行:硬编码密钥
  建议:使用 AWS Secrets Manager 或环境变量

支持 Java、Python、JavaScript、TypeScript、Go、Ruby、Rust 等主流语言。在公开安全基准测试里,Amazon Q 的检测率超过多个领先工具。

4. 代理式编码------说需求它来干

这是亮点功能。在聊天面板里描述任务:

arduino 复制代码
"给 UserService 类添加分页查询功能,
用 DynamoDB 做数据源,
支持 lastKey 翻页"

Amazon Q 会:

  1. 读你项目里的现有代码
  2. 自动创建/修改文件
  3. 生成代码差异(diff)让你确认
  4. 甚至执行 shell 命令(比如跑测试)

SWE-Bench 排行榜上,Amazon Q 的代理式编码得分很高。

5. Java 版本升级------大项目福音

还在 Java 8?Amazon Q 可以帮你升级到 Java 17:

css 复制代码
IDEA → Amazon Q → Transform → 选择目标 Java 版本

亚马逊自己内部用 Amazon Q 升级了超过 30000 个生产应用,平均每个应用几分钟搞定。不是改个 pom.xml 版本号那么简单------它会处理 API 废弃、依赖兼容、语法变更等所有细节。

对比其他 AI 编程工具

功能 Amazon Q Developer 其他方案
代码补全 多行,接受率高 各有表现
内联聊天 支持 部分支持
安全扫描 内置 需额外工具
代理式编码 支持 各有方案
Java 升级 自动化 手动为主
AWS 专长 原生 AWS 知识 通用知识
免费额度 有,个人够用 各不相同

如果你的技术栈是 AWS + Java/Python,Amazon Q Developer 的 AWS 原生知识是核心优势。它理解 DynamoDB 的最佳实践、Lambda 的冷启动优化、IAM 权限配置,不是泛泛而谈。

企业级使用

专业版支持连接私有代码库:

css 复制代码
Settings → Amazon Q → Customizations → 连接 CodeCommit/GitHub 仓库

连接后 Amazon Q 会学习你们的代码风格和内部库,生成的建议更贴合项目实际。同时通过 IAM Identity Center 做权限管控,确保代码不外泄。

和 AWS 控制台联动

Amazon Q 不只在 IDE 里用。登录 AWS 控制台,右下角有个 Amazon Q 面板:

  • "我这个月 Bedrock 花了多少钱"
  • "帮我看看为什么 Lambda 超时了"
  • "推荐一个高可用架构方案"

CLI 里也能用:

bash 复制代码
# 安装 Amazon Q CLI
brew install amazon-q

# 自然语言转 bash
q "查看 us-east-1 所有运行中的 EC2 实例"
# → aws ec2 describe-instances --region us-east-1 --filters "Name=instance-state-name,Values=running"

上手建议

  1. 先装免费版试试:1000 次补全/月,个人学习项目够用
  2. 养成用内联聊天的习惯:比切到浏览器问 AI 快几倍
  3. 安全扫描每次提交前跑一次:早发现早修复
  4. 代理式编码从小任务开始:先让它写单元测试,建立信任后再给大活

Amazon Q Developer:aws.amazon.com/cn/q/develo... JetBrains 插件安装:docs.aws.amazon.com/amazonq/lat... GitHub(amazon-q-jetbrains):github.com/aws/amazon-...

相关推荐
亚马逊云开发者7 小时前
用 Bedrock AgentCore SDK 把 OpenClaw Agent 部署到 AWS 托管运行时:从本地开发到生产上线全流程
云计算·aws
亚马逊云开发者9 小时前
代码一推自动上线:EKS + CodePipeline + Argo CD 搭建 GitOps 实战
aws
亚马逊云开发者9 小时前
MySQL 实时入湖零运维?S3 Tables 两种方案实战
aws
亚马逊云开发者1 天前
5000 台 IoT 设备的异常检测,全 Serverless 架构月成本几十美元——Lambda + DynamoDB + Step Functions 实战
aws
亚马逊云开发者1 天前
WAF 误杀了正常请求怎么补数据?CloudFront + Lambda@Edge 双函数架构实战
aws
亚林瓜子1 天前
AWS EB使用自定义镜像
云计算·bug·aws·ami·fix·eb·al2023
长征coder2 天前
AWS-S2上传提示证书错误
aws
亚马逊云开发者2 天前
SDLC 过时了?从 2x 到 20x 效能的 AIDLC 转型实践 | Kiro + OpenClaw 实战
aws
亚马逊云开发者2 天前
从本地到云端 | OpenClaw Agent + Bedrock AgentCore SDK 部署全攻略
aws