http://www.gradle.org/docs/current/javadoc/org/gradle/api/tasks/Copy.html
http://www.gradle.org/docs/current/dsl/org.gradle.api.tasks.Copy.html
http://www.cnblogs.com/CloudTeng/p/3417762.html
http://www.blogjava.net/wldandan/archive/2012/06/27/381605.html
学习记录:
/**gradle include two parts [part1:project, part2:task] */
/*****************调用Project的task()方法创建Task start*************/
task hello << {
println "the current task name is $name"
println "hello world"
}
/*****************调用Project的task()方法创建Task end*************/
/*****************通过TaskContainer的create()方法创建Task start*****************/
tasks.create(name: 'hello4') << {
println 'hello4'
}
/*****************通过TaskContainer的create()方法创建Task end*****************/
/*****************声明Task之间的依赖关系 start*********************/
task hello5(dependsOn:hello4) << {
println 'hello5'
}
task hello6 << {
println 'hello6'
}
hello6.dependsOn hello5
/*****************声明Task之间的依赖关系 end*********************/
/*****************配置Task属性start ******************/
//定义Task的时候对Property进行配置
task hello7 << {
description = "this is hello7"
println description
}
//调用Task的configure()方法完成Property的设置
task hello9 << {
println description
}
hello9.configure {
description = "this is hello9"
}
/*****************配置Task属性end*****************/
/***************通过定义输入输出实现增量构建 start*******************/
task combineFileContentIncremental {
def sources = fileTree('sourceDir')
def destination = file('destination.txt')
inputs.dir sources
outputs.file destination
doLast {
destination.withPrintWriter { writer ->
sources.each {source ->
writer.println source.text
}
}
}
}
/***************通过定义输入输出实现增量构建 end*******************/
/*****************自定义Property start*********************/
//在build.gradle文件中向Project添加额外的Property时,我们并不能直接定义,而是应该通过ext来定义
ext {
property2 = "this is property2"
}
/*****************自定义Property end*********************/
/*****************重新设置main的目录结构start***************/
sourceSets {
main {
java {
srcDir 'java-sources'
}
resources {
srcDir 'resources'
}
}
}
/*****************重新设置main的目录结构end***************/
/****************创建新的source set start****************/
sourceSets {
api
}
/****************创建新的source set end****************/
/******************一部分项目配置start******************/
configure(allprojects.findAll { it.name.startsWith('sub') }) {
subTask << {
println 'this is a sub project'
}
}
/******************一部分项目配置end******************/
/******************单个配置start******************/
project(':sub-project1') {
task forProject1 << {
println 'for project 1'
}
}
/******************单个配置end******************/
subprojects {
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'war'
repositories {
mavenCentral()
}
dependencies {
/****************直接依赖本地jar包start********************/
//单文件依赖
//compile files('libs/ojdbc14-10.2.0.1.0.jar')
//某个文件夹下面全部依赖
compile fileTree(dir: 'libs', includes: ['*.jar'])
runtime fileTree(dir: 'libs', includes: ['*.jar'])
/****************直接依赖本地jar包end********************/
/****************依赖于Project start*******************/
dependencies {
compile project(':ProjectB')
}
/****************依赖于Project end**********************/
testCompile 'junit:junit:4.8.2'
}
version = '1.0'
jar {
manifest.attributes provider: 'my cool company'
}
}
分享到:
相关推荐
整理的gradle4.1系列的zip包方便下载,在官网下载的太慢,这样放在这里下载起来更快些,仅供学习使用,不作为商业用途
整理的gradle5.4系列的zip包方便下载,在官网下载的太慢,这样放在这里下载起来更快些,仅供学习使用,不作为商业用途
整理的gradle5.1系列的zip包方便下载,在官网下载的太慢,这样放在这里下载起来更快些,仅供学习使用,不作为商业用途
其实很早之前也写了一篇Gradle的基础博客,但是时间很久了,现在Gradle已经更新了很多,所以暂且结合Stduio 1.0正式版与最新的Gradle语法来详细讲解下,小伙伴们直接跟我一步步来学习吧。 什么是Gradle? Gradle是一...
此外,我们还提供了一系列练习题,旨在巩固所学知识,检验学习成果。这些练习题既有基础题,也有难度较高的挑战题,适合不同层次的学习者进行练习。 三、Android开发工具集 在Android开发过程中,选择合适的工具...
AndroidStudio占领市场后,构建工具Gradle的地位无人能比,我们有必要学习、使用它来为我们创造价值。在深入学习Gradle之前,我们有必要了解下它为什么这么流行。Android应用程序的构建过程非常复杂,如图所示:...
本文为“拥抱AndroidStudio”...考虑到传统教育方式的不足之处,笔者在组织本系列文章的时候是先讲入门实例,进而学习Gradle和Groovy基础原理,最后学习进阶实例。上篇文章介绍了从ADT迁移到AndroidStudio,相信经过很
Android进阶学习 Android进阶学习(原始码分析,经验技术,感悟等) 原始码分析 技术框架 经验 命令 Gradle 手把手系列 快速上手系列 Android基础 Java基础 运营 感悟
它旨在用作一系列动手学习活动的示例应用程序。运行应用无需在本地运行该应用程序即可完成学习活动,但是如果您愿意,则需要在本地安装npm。 首先安装npm依赖项: npm install然后,您可以使用以下命令运行该应用...
偶尔搞搞Java后台技术,横向扩展不断学习中.... :high_voltage: 格言: 勤思考 - 多动手 - 善总结 - 能坚持 - 认真生活 - 快乐工作 - 关心于人 - 用心于事 - 静心于己 联系我 个人微信:XY_stars 公众号:JakePrim,...
这个是基于当时Gradle2.x系列写出来的自定义Lint实践总结,过去大半年了,现在将它搬到CSDN博客分享给大家一起学习学习。如果要在Gradle3.x系列使用该自定义规定的话,部分代码都得修改成最新的语法,因此此篇博客的...
主要文件类型包括535个Java源文件、147个Markdown文档、144个Properties文件、129个PNG图片文件、112个JavaScript文件、86个FXML文件、76个Gradle文件、74个gitignore文件、74个XML文件、69个GIF图片文件。...
本系列文章会根据项目的进度进行相关介绍,其会分为多个模块,每个模块互不依赖,各个模块都是单独的学习内容,如sqlite学习模块,contacts联系人模块等。 新建项目 相信大部分童鞋都可以自定义项目了,那么在此,我...
关于作者 ...前腾讯、前阿里员工,从事Java后台工作; 对Docker和Kubernetes充满热爱;...《JUnit5学习》系列旨在通过实战提升SpringBoot环境下的单元测试技能,一共八篇文章,链接如下: jetcd学习特
如果想从零开始学习 Android 开发,那么这系列内容是不合适的内容大纲Gradle 篇 -- 从使用到深入理解常用技术篇 -- 开发进阶必备Git 篇 -- 从使用到深入理解Git 使用Git 原理浅析常用开源库篇 -- 从使用到深入理解...
内容涵盖IDEA的下载安装、创建新项目、编写和运行代码、使用版本控制、使用Maven或Gradle、配置数据库、调试代码、使用插件、使用Terminal、使用Live Templates、代码自动完成、代码重构、代码片段、性能监控、云端...
后端采用SpringBoot框架,它简化了企业级Java应用的开发过程,通过提供一系列自动配置的模板,减少了项目搭建的复杂性。集成了如Spring Security、JWT等安全框架,保障了用户数据的安全性。同时,SpringBoot与...
"springboot170图书电子商务网站的设计与实现.zip" 是一个压缩文件,通常包含了一系列与使用Spring Boot框架设计和实现一个图书电子商务网站相关的资源。虽然我无法访问该压缩包的具体内容,但可以提供一个一般性的...
系列课程总结) Axure RP 指南 - v1.1.pdf Docker —— 从入门到实践 - v1.0 Git 教程 - v1.0.pdf (感觉 也挺好可以查看) GitHub 使用手册 - 基础篇 Gradle 实战中文版 - v1.0 Hibernate 教程 - v1.0.pdf IntelliJ ...
#学习内容源于 程序猿提高篇。 PDF的质量都很高,建议打印出来看 环装 或者胶装 AngularJS 中文版 - v1.0 (推荐) Java 程序员眼中的 Linux - v1.0 Learning-Linux (慕课网 linux 系列课程总结) Axure RP 指南 - v1.1...