【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