引入插件

apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'jetty'

如果希望使用jar来启动项目, 可以这样修改项目和插件属性。

apply plugin: 'java'

//当前项目版本
version = 0.1
//项目兼容到java 1.6 版本
sourceCompatibility = 1.6 //jar 启动配置文件头,这样才能通过jar启动项目
jar {
manifest {
attributes 'Main-Class': 'com.manning.gia.todo.ToDoApp'
}
}

定义仓库

java 中,依赖都是以jar文件的形式发布和使用,许多类库可以在仓库中找到,这个仓库实际上就是中心服务器,你可以这样定义,

repositories {
mavenCentral()
}

定义依赖

dependencies {
compile('org.springframework.boot:spring-boot-starter')
compile group: 'org.springframework.boot', name: 'spring-boot-starter-web', version: '2.0.2.RELEASE' //redis
compile group: 'org.springframework.boot', name: 'spring-boot-starter-data-redis', version: '2.0.2.RELEASE' //数据库
compile group: 'org.mybatis.spring.boot', name: 'mybatis-spring-boot-starter', version: '1.3.2' testCompile group: 'org.springframework.boot', name: 'spring-boot-starter-test', version: '2.0.2.RELEASE' }

配置插件属性

下面定义的是jetty配置访问的端口和访问的根路径。

apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'jetty' repositories {
mavenCentral()
} dependencies {
providedCompile 'javax.servlet:servlet-api:2.5'
runtime 'javax.servlet:jstl:1.1.2'
} jettyRun {
httpPort = 9090
contextPath = 'todo'
}

Gradle 包装器

gradle 包装器可以让没有安装gradle的机器运行gradle构建,可以说是对你的项目gradle配置进行打包,当在其他机器运行时再还原你的gradle环境。

将生成wrapper的任务写在build.gradle 中,例如这样:

apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'jetty' repositories {
mavenCentral()
} dependencies {
providedCompile 'javax.servlet:servlet-api:2.5'
runtime 'javax.servlet:jstl:1.1.2'
} task wrapper(type: Wrapper) {
gradleVersion = '1.2'
}

执行后,生成的树形结构中,有这么一部分

假如你的公司不能使用外网,而你拿到的gradle在构建时,肯定是还原gradle 配置(即是运行gradle wrapper 里的东西,wrapper 要求你请求某个版本,而你是在外网),基于这种情况,那么如何定制wrapper

其他

显示树形结构

tree /f

使用gradle 编译项目

gradle build

参考:

1.<<Gradle In Action>>

Gradle 学习(一)的更多相关文章

  1. Gradle学习总结——抓重点学Gradle

    前言 网上关于Gradle的教程很多,但很多都是以"面"切入- 通过大量讲解其用法及其API分类来阐述.但Gradle API使用技巧众多,API更是成千上百,臣妾记不住呀.个人深 ...

  2. Gradle学习总结

    Gradle学习系列 (1). Gradle快速入门 (2). 创建Task的多种方法 (3). 读懂Gradle语法 (4). 增量式构建 (5). 自定义Property (6). 使用java ...

  3. Gradle 学习资料

    Gradle 学习资料 网址 Gradle 使用指南 http://wiki.jikexueyuan.com/project/gradle/ 寄Android开发Gradle你需要知道的知识 http ...

  4. gradle学习笔记

    一直想着花时间学习下gradle,今天有空.入门一下.参考:极客学院gradle使用指南,官方文档:gradle-2.12/docs/userguide/installation.html,以及百度阅 ...

  5. Gradle学习系列之九——自定义Task类型

    在本系列的上篇文章中,我们学习了多Project构建,在本篇文章中,我们将学到如何自定义Task类型. 请通过以下方式下载本系列文章的Github示例代码: git clone https://git ...

  6. Gradle学习系列之三——读懂Gradle语法

    在本系列的上篇文章中,我们讲到了创建Task的多种方法,在本篇文章中,我们将学习如何读懂Gradle. 请通过以下方式下载本系列文章的Github示例代码: git clone https://git ...

  7. Gradle学习系列之一——Gradle快速入门

    这是一个关于Gradle的学习系列,其中包含以下文章: Gradle快速入门 创建Task的多种方法 读懂Gradle语法 增量式构建 自定义Property 使用java Plugin 依赖管理 构 ...

  8. Gradle学习

    Gradle是一种构建工具,它抛弃了基于XML的构建脚本,取而代之的是采用一种基于Groovy的内部领域特定语言.近期,Gradle获得了极大的关注,这也是我决定去研究Gradle的原因. 这篇文章是 ...

  9. Gradle学习系列(一)

    今天就开始学习Gradle构建了,听说很牛X.本篇内容就带领我初步窥探Gradle的世界.     1.什么是Gradle       相信之前都接触过用Ant或者Meavn进行项目的构建,两者各有千 ...

  10. gradle 学习

    gradle是个构建工具,目的是为了更方便的管理项目. 学习gradle看下面的资料: 中文资料,总共六篇,看完之后基础差不多了: 简介 第一个Java项目 依赖管理 创建二进制发布版本 创建多项目构 ...

随机推荐

  1. 圆角标题title

    Html代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...

  2. toggleClass,toggle切换

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. php数据库编程---mysqli扩展库

    1,mysqli扩展库允许我们访问MySQL数据库,并对MySql数据库进行curd操作.Mysqli扩展库比mysql扩展库加强了. 2,mysqli扩展库和mysql扩展库的比较 (1) mysq ...

  4. mycat 1.6.6.1安装以及配置docker 安装mysql 5.7.24 双主多从读写分离主主切换

    mycat和mysql的高可用参考如下两个图 简介:应用程序仅需要连接HAproxy或者mycat,后端服务器的读写分离由mycat进行控制,后端服务器数据的同步由MySQL主从同步进行控制. 服务器 ...

  5. 963 AlvinZH打怪刷经验(背包DP大作战R)

    963 AlvinZH打怪刷经验 思路 这不是一道普通的01背包题.大家仔细观察数据的范围,可以发现如果按常理来的话,背包容量特别大,你也会TLE. 方法一:考虑01背包的一个常数优化----作用甚微 ...

  6. Mongo限制规则

    文章翻译自来源:http://docs.mongodb.org/manual/reference/limits/#limit-bson-document-size 一.BSON 文档 1.BSON文档 ...

  7. centos的基本命令04

    零:简述linux的文档目录结构 linux的文档目录是一个树形结构,操作的时候表现为以 / 开头的树形结构,/也是系统 的最顶端,也就是linux的root,也是linux系统的文件系统的入口. 他 ...

  8. C#嵌入字体

    1:将字体文件(*.ttf)添加到资源文件里,注意资源的名称 2:在Program.cs文件里声明 using System; using System.Collections.Generic; us ...

  9. Windows USB 编程

    GUID #include <initguid.h> // For DEFINE_GUID // Device Interface GUID.DEFINE_GUID(GUID_DEVINT ...

  10. 安卓与windows

    windows phone 还是PC啊?windows PC的话,应该就是你现在用的电脑系统吧,PC系统和安卓是不一样的,安卓是移动设备系统,基于的构架也不同,意思就是电脑上装不上安卓,移动设备也装不 ...