Clojure项目构建工具:Maven与Leiningen详解
1. 版本范围依赖
在处理依赖库的版本时,若库升级到新版本(如2.0.0),我们需要测试项目与该版本的兼容性,可能还需进行调整,然后发布新版本。同时,可以指定库的版本范围依赖,例如[2.0.0, 3.0.0)。
“裸”版本号(如1.0)属于“软”版本要求。若项目依赖同一库的不同裸版本,如直接依赖1.2版本,而某个依赖项依赖1.6版本,构建时会选择较新的版本。若出现问题,可通过指定版本范围消除歧义,如将直接依赖改为[1.2,1.5],则会选择1.5版本。
版本范围的使用取决于对依赖库项目的评估。若依赖库采用可靠的语义化版本控制,版本范围能确保项目制品仅与兼容的依赖版本一起使用;若采用其他版本控制方案,版本范围的作用可能有限。
2. 构建工具选择
在Clojure项目中,有多种构建工具可供选择,如Leiningen和Maven。选择构建工具时,若组织已标准化使用基于JVM的构建工具链,建议继续使用,因为有适用于Ant、Maven、Gradle等工具的Clojure插件,引入Clojure不会干扰现有的构建和项目管理流程。
3. Maven
Maven是Java世界中最常用的构建工具,是开源的Apache项目。其功能广泛,通过丰富的第三方插件社区,可管理软件项目的“全生命周期”,包括集成和功能测试、代码覆盖率、测试报告和发布管理等。
Maven的显著特点是与其他基于JVM的工具集成良好,如Eclipse、NetBeans和IntelliJ等IDE,Hudson/Jenkins、Clover和Cobertura等团队工
超级会员免费看
订阅专栏 解锁全文
48

被折叠的 条评论
为什么被折叠?



