首页
/ 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多平台开发的首选构建解决方案。

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

项目优选

收起
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
156
2 K
kernelkernel
deepin linux kernel
C
22
6
pytorchpytorch
Ascend Extension for PyTorch
Python
38
72
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
519
50
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
942
555
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
195
279
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
993
396
communitycommunity
本项目是CANN开源社区的核心管理仓库,包含社区的治理章程、治理组织、通用操作指引及流程规范等基础信息
359
12
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
146
191
金融AI编程实战金融AI编程实战
为非计算机科班出身 (例如财经类高校金融学院) 同学量身定制,新手友好,让学生以亲身实践开源开发的方式,学会使用计算机自动化自己的科研/创新工作。案例以量化投资为主线,涉及 Bash、Python、SQL、BI、AI 等全技术栈,培养面向未来的数智化人才 (如数据工程师、数据分析师、数据科学家、数据决策者、量化投资人)。
Python
75
71