【IT168 评论】自动化构建工具是devops,sysadmins等开发人员的重要工具。它只是脚本或自动化将源代码编译成二进制的过程。Sysadmins可以使用构建工具来管理和更新配置文件。以下是与Linux或类Unix系统上自动构建过程相关联的开源工具列表,程序员快收藏吧!
1、GNU make和co - 最流行的自动化构建工具之一
GNU make命令用于在Linux和类Unix系统上维护,编译和构建程序。它是很受程序员欢迎的自动化构建工具之一,并使用TEXT文件格式,它可以用来:
·管理配置文件
·更新配置文件
·编译和构建简单到复杂的程序或库
默认情况下,TEXT文件名为Makefile。Make有很多克隆和重写。以下是一些热门选项:
1、BSD make - FreeBSD / NetBSD / OpenBSD很受欢迎。
2、make - 经典的Unix构建工具。
3、SunPromake - Solaris Unix构建工具。
4、GNU Make - Linux、OS X、* BSD的make标准实现。
如果你运行一个命令,如“./configure && make && make install”,你使用了一个make工具在你的平台上构建软件,通常上面的工具是作为操作系统的一部分安装的。
·一个简单的GNU Makefile
·类型:自动化构建
·语言:C
·平台:Linux,MacOS X,* BSD和类Unix
·许可证:GPL v3
·下载: https://www.gnu.org/software/make/ (GNU Make)
2、Apache Ant - 热门的Java开发工具
Apache Ant是一个非常流行的自动化构建工具,类似于make,用Java编写并使用XML文件格式。当然,它完全适合于构建基于Java的软件。默认情况下,XML文件被称为build.xml。
·一个build.xml样本
·类型: 自动化构建
·语言: Java
·平台: Java SE
·许可: Apache 许可证2.0
·下载: http://ant.apache.org/
3、Gradle ——一个开源工具
Gradel是一个自由开源的自动化构建工具。它扩展了Apache Ant和Maven。它使用DSL(“域特定语言”),而不是Maven/Ant使用的XML格式。Gradle的另一大特点是DAG(“有向无环图”),可用来找到可以构建和运行任务的正确顺序。
·类型:构建工具
·语言:Java,Groovy
·平台:跨平台
·许可证:Apache许可证2.0
·下载: https://gradle.org/
4、Apache Maven - 用于Java的自动化构建工具
Apache Maven是一个免费开源的自动化构建工具。它可用来做依赖管理和构建,并且主要用于Java项目。但不限于基于Java的项目,也可以使用其他编程语言,如Ruby,Python,C#,Scala和其他计算机编程语言。
·一个Maven pom.xml样本文件
·类型:构建工具
·语言:Java
·平台:跨平台
·许可证:Apache许可证2.0
·下载: https://maven.apache.org/
5、Grunt ——可用于前端Web开发的构建工具
Grunt被JavaScript前端开发的程序员当做JavaScript任务运行管理器,因而非常受欢迎。它是一个自由开源的项目,程序员可使用Gruntfile进行单元测试,代码简化,编译等。
·类型:任务运行管理器,构建工具
·语言:Node.js
·平台:Linux,Windows,OS X
·许可证:MIT许可证[
·下载: http://gruntjs.com/
6、Gulp.js ——用于前端Web开发的构建工具
gulp.js是一个免费开源的JavaScript工具包,主要作为前端Web开发的构建工具。这里提供了一个gulpfile.js样例:
什么是gulp?
1、自动化——gulp是一个工具包,可帮助用户在开发工作流程中自动执行复杂或耗时的任务。
2、平台无关——集成在所有主要的IDE中,可在PHP,.NET,Node.js,Java和其他平台使用。
3、强大的生态系统——可以使用npm模块做任何想做的事情,并且有超过2000个流文件转换插件
4、很简单 ——仅提供了一个最小的API,使其易于学习,并且使用简单
·类型:用于自动执行任务的工具包
·语言:Node.js
·平台:跨平台
·许可证:MIT许可证
·下载:http://gulpjs.com/
7、Rake ——类似make的自动化构建工具
Rake是一个免费开源的自动化构建工具,是一个类似于Make的工具,是用Ruby语言创建的。程序员可使用Ruby语法指定所有构建任务和deps。它使用Rakefiles的TEXT文件构建软件,Rake存在于Ruby 1.9及以上版本中。
·一个简单的Rake脚本实例,用于构建C Hello World程序。
·类型:任务管理和自动化构建工具
·语言:Ruby
·平台:跨平台
·许可证:MIT许可证
·下载::https://github.com/ruby/rake