掘金本周最热

JetBrains Amper 0.10 ,期待它未来替代 Gradle

7.8内容质量
JetBrains Amper 0.10 ,期待它未来替代 Gradle

TL;DR · AI 摘要

JetBrains Amper 0.10 作为实验性构建工具,通过 YAML 声明式配置简化 Kotlin/Java 多平台项目管理,正逐步脱离 Gradle 生态,提升环境一致性和 IDE 集成体验。

核心要点

  • Amper 0.10 支持自动 JDK 配置、Maven 转换和第三方插件,构建能力趋于完整。
  • YAML 配置比 Gradle DSL 更简洁直观,特别适合 KMP 项目结构声明与维护。
  • Amper 正从 Gradle 插件转向独立 CLI 工具,目标是成为 JetBrains 生态的新构建入口。
#Amper#Gradle#Kotlin#构建工具#JetBrains
打开原文

JetBrains Amper 0.10 ,期待它未来替代 Gradle最近 JetBrains 发布了 Amper 0 - 掘金

![Image 8: 稀土掘金Image 9: 稀土掘金](http://juejin.cn/post/7629261406288298020)

  • * 搜索历史 清空

* 创作者中心

  • 写文章
  • 发沸点
  • 写笔记
  • 写代码
  • 草稿箱

创作灵感 查看更多

  • 登录 注册 ## 首次登录 / 注册免费领取 登录 / 注册

JetBrains Amper 0.10 ,期待它未来替代 Gradle

恋猫de小郭

2026-04-17 1,885 阅读4分钟

专栏:

Android适配

关注

最近 JetBrains 发布了 Amper 0.10 ,做为一个面向 Kotlin / Java 的实验性构建和配置工具,他的目标是通过更简单的 YAML 配置去支撑 Kotlin Multiplatform、Android、iOS、JVM 等项目管理,然后再通过 Amper CLI 完成构建、运行和工具集成。

这一次 Amper 0.10 更新之所以要聊聊,是因为它经过几年发展,它已经相对变得完善了不少,这次 0.10 主要包括了:

  • JDK provisioning,可以自动下载和安装匹配的 JDK,默认是 JDK 21,支持在 module.yaml 里声明需要的版本
  • Maven to Amper 转换,可以读取现有 pom.xml,生成 project.yaml / module.yaml
  • 支持第三方 Kotlin compiler plugins
  • 默认工具链版本包含 Android minSdk 23、Kotlin 2.3.20、Compose 1.10.3、KSP 2.3.6

那 Amper 有什么用?简答来说,通过 Amper 可以替代现在烦人的 Gradle ,AGP 如今的体验可以说是又臭又长,特别是现在 KMP 时代,build.gradle.kts 往往越来越厚 ,而 Amper 的目的是通过 YAML 来让 IDE 更容易理解项目结构、做自动补全、特别是针对 KMP 用 YAML 来声明模块、平台、依赖和平台特定配置。

看 2024–2026 的更新,Amper 不断补充的是 _project file tooling、Compose resources、KSP2、Android release builds、run/test UX_ 这些能力,可以看出来在一步一步地侵蚀 Gradle 原本的场景。

特别是,现在对于 Amper 来说,standalone version (脱离 Gradle)已经变成主要发展方向,Gradle 版本逐步弱化,而对 Android 来说,Amper 可以让项目配置更省心:

  • JDK 自动准备好,可以灵活配置
  • 模块定义更直观
  • KMP/Compose/Android 放在同一套声明模型下
Image 10
Image 10

虽然一开始 Amper 是建立在 Gradle 上的配置层,但是后来它自己也逐步发展出 standalone CLI、独立命令体系和自己的项目文件,也就是它既可以在 Gradle 生态逐步发展,也可以独立出自己的运行模式,只是目前越来越脱离 Gradle,大概类似于:

Amper = JetBrains 在 Kotlin/KMP/Android 构建体验上的新抽象层和新入口

Image 11
Image 11

因为 Gradle 本质是一个可编程 DSL,所以它既可以写逻辑,又可以写条件,还可以 hook 生命周期,所以老项目的结果往往就是,配置文件逐渐变成“代码工程本身的一部分”。

而这个问题在 KMP 上变得更明显,因为多平台以来之后,环境,脚本和 CI 也变得更加复杂,但是 Amper 不一样,Amper 的官方定义是:

一个面向 Kotlin 和 Java 的构建工具,使用 YAML 进行声明式配置,并提供 CLI 和 IDE 集成。

例如在之前 Gradle 常见写法是:

scss

体验AI代码助手

代码解读

复制代码

scss
kotlin {
    android()
    ios()
​
    sourceSets {
        val commonMain by getting {
            dependencies {
                implementation("xxx")
            }
        }
    }
}

而在 Amper 里,写法就是:

yaml

体验AI代码助手

代码解读

复制代码

yaml
product:
  type: app
​
platforms:
  - android
  - ios
​
dependencies:
  - xxx
Image 12
Image 12
Image 13
Image 13

那为什么说它会变得更好,因为它的集成度和全自动化,例如 Amper 可以自动下载 JDK 和自动匹配版本,用官方的话说就是:

开发者可以在不手动安装任何东西的情况下就能运行项目。

Image 14
Image 14

也就是,用 Amper 的目的是它自己就可以负责“环境一致性”,特别是前面我们说过, 2024–2026 的各种更新内容有:

  • project model(项目结构)
  • Compose resources(资源处理)
  • KSP2(代码生成)
  • Android release builds(发布构建)
  • run / test UX(运行与测试)
  • compiler plugins(编译扩展)
  • JDK provisioning(环境管理)

从这些更新,可以看到一个非常清晰的覆盖路径,路径几乎就是 Gradle 在 Android 项目里的核心职责。

Image 15
Image 15

另外 Amper 的角度, 构建工具不只是单纯的“工具”,而是带 toolchain、默认版本、项目模型的一体化生态产品,并且 Declarative 的 YAML/TOML 也在逐步替代 Gradle DSL ,因为 AI 时代:

DSL 太强,IDE 太难理解,特别是多平台下,必须要一个更简单的模型。

还有个适配小技巧,复制 gradle 然后粘贴到 module.yaml 时,它会自动转换为 Amper 适配的模式

Image 16: ezgif-42d705d72a6e066c
Image 16: ezgif-42d705d72a6e066c

所以,目前虽然 `Amper 0.10` 还不是正式的 Gradle 的替代者,但它已经在系统性接管 Gradle 的职责,至少在 Kotlin/KMP/Android 的 JetBrains 生态里,Amper 已经不只是一个实验配置层,而是在被持续推进成为新的构建入口。

所以可以预期,未来 Amper 完全替代 Gradle 的哪一天,就可以不再面对这个又臭又大的 AGP 了。

标签:

前端AndroidFlutter

话题:

每日精选文章

本文收录于以下专栏

Image 17: cover
Image 17: cover

Android适配

专栏目录

Android适配专栏

64 订阅

·

42 篇文章

订阅

上一篇

compose_skill 和 android skills,对 Android 项目提升巨大的专家 AI Skills

下一篇

Android CLI ,谷歌为 Android 开发者专研的 AI Agent,提速三倍

评论 14

Image 18: avatar
Image 18: avatar

0/ 1000

标点符号、链接等不计算在有效字数内

⌘ + Enter

发送

登录 / 注册 即可发布评论!

最热

最新

bqliang

Android | Flutter

可惜是 .yaml 不是 .kts

9小时前

点赞

评论

  • 屏蔽作者:bqliang
  • 举报

snwrking

大前端开发

这是写死的yaml文件 , 不能像gradle里用groovy一样灵活, 去做一些自己的函数之类, 达到定制的目的了. 这个amper想要订制怕就比gradle麻烦多了, 怕是要写一堆东西, 然后各种约定要如何写如何摆放吧

22小时前

点赞

评论

  • 屏蔽作者:snwrking
  • 举报

Max

developer @DesaySV

yaml版的maven吗![Image 22: [发呆]](http://lf-web-assets.juejin.cn/obj/juejin-web/xitu_juejin_web/img/jj_emoji_4.28b310a.png)

2天前

点赞

评论

  • 屏蔽作者:Max
  • 举报

查看全部 14 条评论

Image 23 19

Image 24 14

Image 25 收藏

加个关注,精彩更新不错过~

Image 26: avatar
Image 26: avatar

关注

557 文章5.6m 阅读36k 粉丝

加个关注,精彩更新不错过~

关注

已关注

私信

目录

收起

相关推荐

[Android CLI ,谷歌为 Android 开发者专研的 AI Agent,提速三倍 1.5k阅读 · 28点赞](http://juejin.cn/post/7629374592915128383 "Android CLI ,谷歌为 Android 开发者专研的 AI Agent,提速三倍")[Get 这波之后,我把 Flutter 状态管理重新看了一遍:新项目到底该选谁? 845阅读 · 9点赞](http://juejin.cn/post/7628797515802214434 "Get 这波之后,我把 Flutter 状态管理重新看了一遍:新项目到底该选谁?")[Flutter 仿微信输入框最佳实践:自适应高度 + 超行数智能切换全屏 368阅读 · 12点赞](http://juejin.cn/post/7629093024324534318 "Flutter 仿微信输入框最佳实践:自适应高度 + 超行数智能切换全屏")[《Flutter跨平台开发核心技巧与应用》新书来了 101阅读 · 1点赞](http://juejin.cn/post/7629175584182976555 "《Flutter跨平台开发核心技巧与应用》新书来了")[别再手动管理 NavBackStackEntry 了!ComposeResult:更优雅的 Jetpack Compose 页面通信方案 153阅读 · 2点赞](http://juejin.cn/post/7628862714291683369 "别再手动管理 NavBackStackEntry 了!ComposeResult:更优雅的 Jetpack Compose 页面通信方案")

精选内容

[2026 年前端工程师面试:一份来自面试官视角的真实复盘 怕浪猫 · 400阅读 · 9点赞](http://juejin.cn/post/7629927278534246427 "2026 年前端工程师面试:一份来自面试官视角的真实复盘")[构建无障碍组件之Window Splitter Pattern anOnion · 45阅读 · 1点赞](http://juejin.cn/post/7630450023369850907 "构建无障碍组件之Window Splitter Pattern")[PDF无限制预览!Jit-Viewer V1.5.0开源文档预览神器正式发布 徐小夕 · 371阅读 · 6点赞](http://juejin.cn/post/7630100585876766729 "PDF无限制预览!Jit-Viewer V1.5.0开源文档预览神器正式发布")[为了在 Vue 项目里用上想要的 React 组件,我写了这个 skill Hooray · 100阅读 · 0点赞](http://juejin.cn/post/7630042678585933834 "为了在 Vue 项目里用上想要的 React 组件,我写了这个 skill")[模仿ai数据流 开箱即用 咸鱼翻身了么 · 43阅读 · 0点赞](http://juejin.cn/post/7630018111996690472 "模仿ai数据流 开箱即用")

找对属于你的技术圈子

回复「进群」加入官方微信群

Image 29
Image 29

为你推荐

* [10个问题带你看懂 Compose 跨平台](http://juejin.cn/post/7039698227397918756 "10个问题带你看懂 Compose 跨平台") 近日 JetBrains 正式发布了 Compose Multiplatform 1.0 版,这标志其在生产环境中使用的时机已经成熟。相信有不少人对它还不太熟悉,本文通过下面 10 个热门问题带大家认

[Android](http://juejin.cn/tag/Android "Android")

Image 30: 10个问题带你看懂 Compose 跨平台
Image 30: 10个问题带你看懂 Compose 跨平台

* [10个问题带你了解 Compose Multiplatform 1.0](http://juejin.cn/post/7038465186168045605 "10个问题带你了解 Compose Multiplatform 1.0") 近日 JetBrains 正式发布了 Compose Multiplatform 1.0 版。Flutter 的时代是否即将落幕?本文通过 10 个热门问题带大家认识这一新的跨平台技术。

[Android](http://juejin.cn/tag/Android "Android")[Kotlin](http://juejin.cn/tag/Kotlin "Kotlin")[Flutter](http://juejin.cn/tag/Flutter "Flutter")

Image 31: 10个问题带你了解 Compose Multiplatform 1.0
Image 31: 10个问题带你了解 Compose Multiplatform 1.0

* [Android 工程使用 opencv 4.10.0 后编译失败问题](http://juejin.cn/post/7406238334215700515 "Android 工程使用 opencv 4.10.0 后编译失败问题") 在升级 Android 工程中的 OpenCV 到 4.10.0 后,遇到 Kotlin 版本不兼容问题。本文详细描述了如何将项目的 Kotlin 版本从 1.6.0 升级到 1.8.22,并同步更新

[Android](http://juejin.cn/tag/Android "Android")

* [一文速览Kotlin 1.9.0重大更新](http://juejin.cn/post/7242596632368267323 "一文速览Kotlin 1.9.0重大更新") Kotlin 1.9.0-Beta版本已经发布有两周了,有一些比较有意思的更新我们需要关注一下。Kotlin 1.0.9-Beta中主要的更新有: 新的K

[Android Jetpack](http://juejin.cn/tag/Android%20Jetpack "Android Jetpack")[Kotlin](http://juejin.cn/tag/Kotlin "Kotlin")

Image 32: 一文速览Kotlin 1.9.0重大更新
Image 32: 一文速览Kotlin 1.9.0重大更新

* [Kotlin 1.0.6 发布啦](http://juejin.cn/post/6844903458986803214 "Kotlin 1.0.6 发布啦") Kotlin 1.0.6 为大家带来了较大的插件优化和性能提升。

[Kotlin](http://juejin.cn/tag/Kotlin "Kotlin")[Java](http://juejin.cn/tag/Java "Java")

Image 33: Kotlin 1.0.6 发布啦
Image 33: Kotlin 1.0.6 发布啦

* [分析android :The binary version of its metadata is 1.8.0, expected version is 1.5.](http://juejin.cn/post/7439938175441993780 "分析android :The binary version of its metadata is 1.8.0, expected version is 1.5.") 前言 当打包项目时会出现标题错误,有时候会弹出此错误但不影响打包,有时候会导致直接打包失败但可以直接在AS中安装,很是头大。 以我报错内容为例:【android其元数据的二进制版本为1.8.0,预期版

[Android](http://juejin.cn/tag/Android "Android")

* [AndroidAGP8.1.0和JDK 17迁移之旅](http://juejin.cn/post/7269049833363963923 "AndroidAGP8.1.0和JDK 17迁移之旅") 随着 Android Studio Flamingo 正式版的发布,AGP 8(Android Gradle Plugin 8)也正式进入咱们的视野,**这次 AGP 8 相关更新归于「断代式」更新

[Android](http://juejin.cn/tag/Android "Android")

Image 34: AndroidAGP8.1.0和JDK 17迁移之旅
Image 34: AndroidAGP8.1.0和JDK 17迁移之旅

* [2024 Google I/O 宣布正式支持 Kotlin Multiplatform ,那 KMP 是什么?它的未来在哪里?](http://juejin.cn/post/7372030889422848051 "2024 Google I/O 宣布正式支持 Kotlin Multiplatform ,那 KMP 是什么?它的未来在哪里?") 基于最近一直有人和我提 KMP ,那就简单聊聊。 2024 Google I/O 正式官宣了支持 KMP ,而一般意义上的 KMP 指的就是 Kotlin Multiplatform ,它是 Goog

[前端](http://juejin.cn/tag/%E5%89%8D%E7%AB%AF "前端")[Flutter](http://juejin.cn/tag/Flutter "Flutter")[Android](http://juejin.cn/tag/Android "Android")

Image 35: 2024 Google I/O 宣布正式支持 Kotlin Multiplatform ,那 KMP 是什么?它的未来在哪里?
Image 35: 2024 Google I/O 宣布正式支持 Kotlin Multiplatform ,那 KMP 是什么?它的未来在哪里?

* [Android经典实战之Kotlin 2.0 迁移指南:全方位优化与新特性解析](http://juejin.cn/post/7403650789064982554 "Android经典实战之Kotlin 2.0 迁移指南:全方位优化与新特性解析") Kotlin 2.0 迁移指南:开发者如何迎接新时代 Kotlin 2.0,这个备受期待的版本,终于在 JetBrains 的精心打磨下问世。它不仅带来了全新的 K2 编译器,而且在性能、智能代码分析

[面试](http://juejin.cn/tag/%E9%9D%A2%E8%AF%95 "面试")[Android](http://juejin.cn/tag/Android "Android")[Kotlin](http://juejin.cn/tag/Kotlin "Kotlin")

Image 36: Android经典实战之Kotlin 2.0 迁移指南:全方位优化与新特性解析
Image 36: Android经典实战之Kotlin 2.0 迁移指南:全方位优化与新特性解析

* [AOP 面向切面编程, 字节码插桩, 自定义 Gradle Plugin + Transform + ASM「小白操作版」, 基于 AGP 7.2.0,](http://juejin.cn/post/7137245533483040799 "AOP 面向切面编程, 字节码插桩, 自定义 Gradle Plugin + Transform + ASM「小白操作版」, 基于 AGP 7.2.0, ") AOP 面向切面编程, 字节码插桩, 自定义 Plugin + Transform+ ASM「小白操作版」, 基于 AGP 7.2+ , AsmClassVisitorFactory, 方法耗时

[Android](http://juejin.cn/tag/Android "Android")

Image 37: AOP 面向切面编程, 字节码插桩, 自定义 Gradle Plugin + Transform + ASM「小白操作版」, 基于 AGP 7.2.0,
Image 37: AOP 面向切面编程, 字节码插桩, 自定义 Gradle Plugin + Transform + ASM「小白操作版」, 基于 AGP 7.2.0,

* [Spring Native 0.10.0 发布](http://juejin.cn/post/6973890649519030302 "Spring Native 0.10.0 发布") 官方已经宣布了 Spring Native 0.10.0的发布。它基于Spring Boot 2.5和GraalVM 21.1。 这个版本有很多新特性,亮点包括引入了本地测试等。

[资讯](http://juejin.cn/tag/%E8%B5%84%E8%AE%AF "资讯")

Image 38: Spring Native 0.10.0 发布
Image 38: Spring Native 0.10.0 发布

* [Spring Native 0.10.0 发布,重大突破!!](http://juejin.cn/post/6975768661319483399 "Spring Native 0.10.0 发布,重大突破!!") 大家好,我是你们的码农大哥——栈长。 6 月初的时候给大家介绍了 Spring 团队的最新杀手锏项目:[Spring Native

[Java](http://juejin.cn/tag/Java "Java")

* [如何使用Gradle7.0+的VERSION_CATALOG](http://juejin.cn/post/7262372539521892413 "如何使用Gradle7.0+的VERSION_CATALOG") 如何快速友好的统一管理项目的版本号,它来了---VERSION_CATALOG,官方的依赖版本共享控制插件,你值得拥有

[gradle](http://juejin.cn/tag/gradle "gradle")

* [Android - 统一依赖管理(config.gradle)](http://juejin.cn/post/7224007334513770551 "Android - 统一依赖管理(config.gradle)") 本文详细介绍了通过新建config.gradle文件,对安卓项目进行统一依赖管理的方法,这是谷歌推荐的方法。本文也是LeoFastDevMvpKotlin 项目快速开发框架的扩展文章。

[Android](http://juejin.cn/tag/Android "Android")[gradle](http://juejin.cn/tag/gradle "gradle")

Image 39: Android - 统一依赖管理(config.gradle)
Image 39: Android - 统一依赖管理(config.gradle)

* [[Gradle翻译]如何在Gradle中使用复合构建作为buildSrc的替代?](http://juejin.cn/post/7199840152217288761 "[Gradle翻译]如何在Gradle中使用复合构建作为buildSrc的替代?") Gradle buildSrc的方法已经成为实现自定义插件、任务和指定常见配置(如依赖关系列表和版本)的标准,但它有一个重大缺陷--当构建缓存被改变时,它就会失效。另一方面,Gradle也提供了一种替

[gradle](http://juejin.cn/tag/gradle "gradle")

收藏成功!

已添加到「」, 点击更改

  • 微信Image 40微信扫码分享
  • 新浪微博
  • QQ
Image 41: image
Image 41: image

AI代码助手上线啦

选中代码,体验AI替你一键快速解读代码

立即体验

APP内打开

Image 44
Image 44

温馨提示

当前操作失败,如有疑问,可点击申诉

前往申诉 我知道了

Image 45选择你感兴趣的技术方向

后端

前端

Android

iOS

人工智能

开发工具

代码人生

阅读

跳过

上一步

至少选择1个分类

沉浸阅读

确定屏蔽该用户

屏蔽后,对方将不能关注你、与你产生任何互动,无法查看你的主页

取消 确定