发布于 2014-07-16 作者 陈 忠岳

感谢微软开放技术有限公司(简称“微软开放技术”)发布的构建模板,我们现在便可以在 Team Foundation Server(TFS)上使用流行的企业自动化工具 Gradle。这个新模板允许 TFS 用户在使用 Gradle 连续部署适用于 Linux 和 Windows 的 Azure 云服务的同时,还可以将 Gradle 当作一款构建工具使用。

Gradle 概述

Gradle 是一款在 Java、Groovy 和 Scala 社区都备受欢迎的构建自动化工具。它支持软件包或其他项目类型(如已生成静态网站和已生成文档)的自动化构建、测试、发布以及部署。Gradle 的主要功能包括:

  • 声明性 (Declarative ) 构建与按照惯例进行构建

    在一种丰富、可扩展的基于 Groovy 的领域特定语言(DSL)的控制下,Gradle 提供声明的方式描述各种构建。它采用提供合理默认值的方法,要求用户定义这些默认值的任何偏离值。Gradle 为 Java、Groovy、OSGi、Web 和 Scala 项目提供这种开箱即用式的“按照惯例进行构建”的支持。
  • 深度 API

    Gradle 可在构建执行的整个生命周期提供 API Hook。因此,您可以采用任何必要的方式监控、定制其配置和执行行为。
  • 扩展性

    侧重扩展性的设计,确保了不论您的项目规模如何,Gradle 都是一款有用的效能工具。它适用于任何项目,小到手提电脑上一个简单的独立项目构建,大到云上大型的企业多项目构建。Gradle 还可在多项目构建中创建项目关系模型,包括所有的依赖关系,进而提供完整或部分构建。如果与 Gradle 强大的增量构建功能合用,这种建模功能可以顺利提升大规模项目的工作效率。

入门

我们知道,您可能迫切地想看到适用于 TFS 的 Gradle 文档。Gradle 和 TFS 的相关文档都已为您准备好。请先通过以下图表了解项目启动前的准备事项。欢迎您提出意见、建议,以帮助我们GitHub 页面知识库的不断完善。

本文转载自:

http://cn.msopentech.com/blog/2014/07/16/using-gradle-tfs-build-automation/

使用 Gradle 实现 TFS 构建自动化的更多相关文章

  1. Jenkins 构建自动化 .NET Core 发布镜像

    Jenkins 构建自动化 .NET Core 发布镜像 导读 在本章中,将介绍如何在 Linux 下使用 Docker 部署.启动 Jenkins,编写脚本,自动化构建 .NET Core 应用,最 ...

  2. Jenkins+PMD构建自动化静态代码检测

    前言:软件缺陷是不可避免的,要尽量减少错误并提高软件质量,主要有两在类技术,即缺陷预防和缺陷检测 缺陷预防包括编写更好的设计规范.实施代码审核制度.运行代码静态分析工具.运行单元测试等 PMD是一种开 ...

  3. 使用Gulp实现前端构建自动化

    使用Gulp实现前端构建自动化 安装 一.安装NodeJs Gulp的安装依赖于NodeJs的npm安装管理器 安装包下载地址 关于npm命令: 1. npm install <name> ...

  4. Maven构建自动化

    构建自动化定义相关工程项目构建过程中,在当项目构建成功完成启动的情况下,来确保所依赖的项目是稳定的. 实例 考虑一个团队正在开发一个项目总线核心API上的其他两个项目的应用程序:网页UI和应用程序的桌 ...

  5. Gradle 庖丁解牛(构建生命周期核心托付对象创建源代码浅析)

    [工匠若水 http://blog.csdn.net/yanbober 未经同意严禁转载,请尊重作者劳动成果.私信联系我] 1 背景 上一篇<Gradle 庖丁解牛(构建源头源代码浅析)> ...

  6. (译)学习如何构建自动化、跨浏览器的JavaScript单元测试

    作者:Philip Walton 译者:Yeaseon 原文链接:点此查看 译文仅供个人学习,不用于任何形式商业目的,转载请注明原作者.文章来源.翻译作者及链接,版权归原文作者所有. ___ 我们都知 ...

  7. 【Gradle】Android Gradle 多项目构建

    Android Gradle 多项目构建 Android 项目区别 Android项目一般分为库项目,应用项目,测试项目,Android Gradle 根据这些项目分别对应3种插件:com.andro ...

  8. maven 学习---Maven构建自动化-Hudson

    建立自动化定义场景,依赖项目建设过程中被启动,一旦项目生成成功完成,以确保相关的项目是稳定的. 实例 考虑一个团队正在开发一个项目总线核心API上的其他两个项目的应用程序,网页UI和应用程序的桌面UI ...

  9. hexo-next-travis-ci 构建自动化部署博客

    构建效果如上面视频所示,如果浏览器不支持请戳一下链接: 自动化部署构建效果 .只要将编辑的 .md 文件推送到 github 上,博客网站就可以更新这篇文章. 其实差不多半年前也构建过一次,由于安装 ...

随机推荐

  1. Android 指定日期时间执行任务的Timer

    放上一个指定详细日期及时间的timer public class MainActivity extends Activity { private Handler handler = new Handl ...

  2. 【转】Java中equals和==的区别

    [转]Java中equals和==的区别 java中的数据类型,可分为两类: 1.基本数据类型,也称原始数据类型.byte,short,char,int,long,float,double,boole ...

  3. U3D 收藏一个飞机随机运动的方法

    文章转载:http://www.manew.com/thread-43578-1-1.html 前面的学习中已经涉及到了随机运动,这一篇主要还是前面的随机运动的改进,不废话直接上效果图吧,对比前面的随 ...

  4. 转之农民伯伯 IHttpHandler中使用Session实现原理[ASP.NET | IHttpHandler |IRequiresSessionState]

    前言 在实现自己的Handler的时候只需要继承IHttpHandler接口就行了,在Handler中使用Session时,只需要继承一下IRequiresSessionState就行了,到底为什么只 ...

  5. (转)C# NameValueCollection集合

    1.NameValueCollection类集合是基于 NameObjectCollectionBase 类. 但与 NameObjectCollectionBase 不同,该类在一个键下存储多个字符 ...

  6. js原型解析

    我们都知道javascript因为具有了继承以及变量等等一系列的特性之后才被人们认为具有一门编程语言的资格,在后续的不断发展中,js在原生的基础上扩展了基于jquery等等的库,甚至衍生了像node. ...

  7. php实现无限级树型菜单(函数递归算法)

    首先到数据库取数据,放到一个数组,然后把数据转化为一个树型状的数组,最后把这个树型状的数组转为html代码.也可以将第二步和第三步合为一步. 详细如下:1.数据库设计:脚本如下:CREATE TABL ...

  8. C++静态成员函数访问非静态成员的几种方法

    大家都知道C++中类的成员函数默认都提供了this指针,在非静态成员函数中当你调用函数的时候,编译器都会“自动”帮你把这个this指针加到函数形参里去.当然在C++灵活性下面,类还具备了静态成员和静态 ...

  9. Ninject 自动注册

    首先这个问题我纠结了很久,看到autofac强大的自动注册功能,我感觉Ninject弱爆了,不过Ninject自带属性注册,感觉很方便,所以还在纠结Ninject 传统的绑定方式 public cla ...

  10. HttpRequest 和HttpWebRequest的区别

    [1]问题: asp.NET C#  中HttpRequest 和HttpWebRequest的区别 HttpRequest 与HttpWebRequest 有什么区别? 网上中文的帖子很多,但是答案 ...