首页
/ Amper项目v0.7.0版本发布:构建工具的重大升级

Amper项目v0.7.0版本发布:构建工具的重大升级

2025-07-02 09:05:57作者:袁立春Spencer

Amper是JetBrains推出的一款现代化项目构建工具,旨在简化多平台项目的配置和管理工作。它通过声明式的YAML配置文件来定义项目结构、依赖关系和构建目标,特别适合Kotlin多平台项目开发。最新发布的v0.7.0版本带来了多项重要改进和新特性。

核心特性升级

1. 增强的测试功能支持

新版本显著改进了测试功能,现在可以为JVM测试指定系统属性。开发者可以在配置中直接定义测试运行时需要的JVM参数,这在集成测试和需要特定环境变量的场景下特别有用。

2. Kotlin编译器插件支持

v0.7.0版本新增了对两个常用Kotlin编译器插件的支持:

  • all-open插件:自动为带有特定注解的类添加open修饰符,这在Spring框架等需要代理的场合非常实用
  • no-arg插件:为带有特定注解的类生成无参构造函数,简化了JPA等框架的使用

3. Spring Boot集成改进

针对Spring Boot开发者,新版本提供了更友好的支持:

  • 新增了springBoot: enabled配置选项,简化Spring Boot项目的设置
  • 支持Spring的BOM(物料清单)依赖管理,可以更轻松地管理Spring生态组件的版本一致性

4. iOS开发增强

对于移动开发者,特别是iOS平台:

  • 新增了构建静态iOS框架的支持
  • 改进了Xcode构建步骤的输出信息,使调试更加方便
  • 修复了iOS设备选择的相关问题

依赖管理改进

依赖解析系统得到了多项增强:

  • 支持从外部依赖引用的BOM中获取依赖约束
  • 改进了依赖冲突时的错误信息,现在会明确指出哪个传递依赖的版本被提升
  • 新增了更简洁的BOM依赖声明语法

用户体验优化

1. 错误处理改进

  • 用更友好的内部错误消息替代了堆栈跟踪
  • 增加了对配置文件中常见错误的早期检测,如:exported空格错误
  • 改进了模块依赖循环的检测机制

2. 构建过程改进

  • 现在会等待进程在Ctrl+C后正常终止
  • 修复了并行构建时的文件冲突问题
  • 改进了缓存位置设置,特别是在Windows系统上

3. 测试输出优化

  • 解决了测试输出与进度显示交错的问题
  • 修复了测试输出重复显示的问题
  • 改进了TeamCity格式的输出处理

技术栈更新

v0.7.0版本更新了多项底层技术:

  • 将默认的Compose版本升级到1.8.0
  • 更新JUnit Console Launcher到1.12.1
  • 将KSP( Kotlin符号处理)默认版本更新到2.1.21-2.0.1

未来发展方向

值得注意的是,此版本开始逐步弃用基于Gradle的Amper插件,转向独立的Amper构建工具。这标志着Amper项目向更加独立和统一的方向发展,开发者应关注这一变化并做好迁移准备。

总结

Amper v0.7.0通过新增对常用开发框架的支持、改进依赖管理系统和优化用户体验,进一步巩固了其作为现代化构建工具的地位。特别是对Spring生态和iOS开发的支持,使得它在企业级应用和移动开发领域更具吸引力。随着独立构建工具的成熟,Amper有望成为Kotlin多平台开发的首选构建解决方案。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
23
6
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
225
2.27 K
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
9
1
flutter_flutterflutter_flutter
暂无简介
Dart
526
116
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
987
583
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
351
1.42 K
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
61
17
GLM-4.6GLM-4.6
GLM-4.6在GLM-4.5基础上全面升级:200K超长上下文窗口支持复杂任务,代码性能大幅提升,前端页面生成更优。推理能力增强且支持工具调用,智能体表现更出色,写作风格更贴合人类偏好。八项公开基准测试显示其全面超越GLM-4.5,比肩DeepSeek-V3.1-Terminus等国内外领先模型。【此简介由AI生成】
Jinja
47
0
giteagitea
喝着茶写代码!最易用的自托管一站式代码托管平台,包含Git托管,代码审查,团队协作,软件包和CI/CD。
Go
17
0
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
JavaScript
212
287