Gradle笔记
文章平均质量分 89
貌似掉线
09年入学广东海大。13年12月,离开04013。
展开
-
Gradle 2.0 用户指南翻译——第五十七章. 编写自定义任务类
本文禁止w3cschool转载!翻译项目请关注Github上的地址:https://github.com/msdx/gradledoc。本文翻译所在分支:https://github.com/msdx/gradledoc/tree/2.0。更好的阅读体验请访问:http://gradledoc.githang.com/2.0/userguide/userguide.html。另外,...翻译 2019-12-06 22:25:25 · 550 阅读 · 0 评论 -
gradle测试出现IllegalArgumentException
今天clone了一份代码,跑gradle test时出现failed,从report上来看是这个错误:IllegalArgumentException,具体如下:java.lang.IllegalArgumentException at org.objectweb.asm.ClassReader.(Unknown Source) at org.objectweb.asm.ClassRead原创 2014-04-28 11:09:29 · 5310 阅读 · 0 评论 -
gradle2.0笔记——让项目升级到gradle2.0
昨晚看到消息说gradle2.0发布了,今天去看了一下,确实是昨天发布的,为rc版本:Gradle 2.0-rc-2。于是决定试一下。gradle可以在官网上下载,地址如下:http://www.gradle.org/release-candidate。不过由于我许多项目因为兼容性问题目前暂时用不了gradle2.0,所以现在只能对我个别私人项目使用。如果你想让所有项目都用gradle2.0的原创 2014-06-24 22:12:12 · 31837 阅读 · 3 评论 -
gradle编译自定义注解(annotation)的未解决问题
最近把一个用eclipse构建的项目,加上了Gradle脚本,用它来编译。虽然最后编译是显示BUILD SUCCESSFUL,但是在编译过程中,却打印出一大堆栈信息,似乎是在编译我自定义的注解时出现的异常。打印的栈信息前面部分如下::assemble:lintFailed converting ECJ parse tree to Lombok for file E:\code\git\原创 2014-05-14 22:02:55 · 7567 阅读 · 3 评论 -
利用gradle添加构建版本号
在java的程序中,貌似都没有这个构建版本号的概念,用的诸如eclipse, idea和android studio的IDE也没有直接提供构建版本号的选项。不过我却想在android程序的版本号当中添加一个构建版本号,当然,这个只是个人的蛋疼需求。虽然在stackoverflow上看到其他人也有这种需求,但相信人不多。这里分享一下我的解决方法。首先在app的build.gradle中的an原创 2014-09-28 10:46:56 · 24508 阅读 · 1 评论 -
Gradle笔记——依赖管理基础
1. 什么是依赖管理依赖管理可以分为两部分:一是依赖,即项目构建或运行时所需要的一些文件;二是发布,即构建完成后上传到某个地方。1.1 依赖大部分的项目都需要第三方库类或项目文件,这些文件就是项目的依赖了。比如JDBC的jar包,junit的jar包等等。Gradle需要你告诉它工程的依赖是什么,在哪里可以找到,然后它帮你加入构建。在依赖中,可能需要去远程仓库下载文件,如mav原创 2014-11-06 23:40:44 · 11014 阅读 · 3 评论 -
Gradle笔记——关于Gradle 1.12
如果你能进来看这篇文章,相信你对Gradle也有一个简单了解。这里也不再叙述它相对于其他构建工具的优势,而是介绍一下Gradle 1.12这个版本。到目前为止,Gradle已经出到2.1版本了,为什么还从1.12这个版本开始介绍?主要的原因是我使用Gradle是Android开发所需要。公司里面是采用Android Studio来进行Android项目的开发的,而公司里普遍用的还是Androi原创 2014-10-13 10:27:48 · 10458 阅读 · 0 评论 -
Gradle 1.12 翻译——第十三章 编写构建脚本
第十三章 编写构建脚本这一章着眼于一些编写构建脚本的详细信息。13.1. Gradle 构建语言Gradle 提供一种领域特定语言或者说是 DSL,来描述构建。这种构建语言基于 Groovy 中,并进行了一些补充,使其易于描述构建。13.2. Project API在第 7 章, Java 快速入门的教程中,我们使用了 apply ()方法。这方法从何而来?我们之前说在 Gradle 中构建脚本定义了一个项目(project)。在构建的每一个项目中,Gradle 创建了一个Project类型的翻译 2014-11-10 09:17:11 · 4078 阅读 · 0 评论 -
Gradle 1.12 翻译——第十四章. 教程 - 杂七杂八
第十四章. 教程 - 杂七杂八14.1. 创建目录有一个常见的情况是,多个任务都依赖于某个目录的存在。当然,你可以在这些任务的开始加入mkdir来解决这个问题。但这是种臃肿的解决方法。这里有一个更好的解决方案 (仅适用于这些需要这个目录的任务有着dependsOn的关系的情况):14.2. Gradle 属性和系统属性Gradle 提供了许多方式将属性添加到您的构建中。 从Gradle 启动的 JVM,你可以使用-D命令行选项向它传入一个系统属性。 Gradle命令的-D选项和java命令的-D选翻译 2014-11-11 08:38:22 · 6473 阅读 · 0 评论 -
Gradle 1.12 翻译——第九章 Groovy快速入门
由于时间关系,没办法同时做笔记和翻译,关于Gradle的用户指南,本博客都不再做相关笔记,而对未翻译章节进行翻译并在此发表。有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,以及地址:http://gradledoc.qiniudn.com/1.12/userguide/userguide.html本文原翻译 2014-11-08 13:31:51 · 6253 阅读 · 1 评论 -
Gradle 1.12 翻译——第十五章. 任务详述
第十五章. 任务详述在入门教程 (第 6 章,构建脚本基础) 中,你已经学习了如何创建简单的任务。之后您还学习了如何将其他行为添加到这些任务中。并且你已经学会了如何创建任务之间的依赖。这都是简单的任务。但 Gradle 让任务的概念更深远。Gradle 支持增强的任务,也就是,有自己的属性和方法的任务。这是真正的与你所使用的 Ant 目标(target)的不同之处。这种增强的任务可以由你提供,或由 Gradle 提供。15.1. 定义任务在第 6 章,构建脚本基础 中我们已经看到如何通过关键字这种风翻译 2014-11-12 08:51:33 · 5305 阅读 · 0 评论 -
Gradle 1.12 翻译——第十六章. 使用文件
第十六章. 使用文件大多数构建工作都要使用到文件。Gradle 添加了一些概念和 API 来帮助您实现这一目标。16.1. 定位文件你可以使用Project.file()方法来找到一个相对于项目目录的文件 。您可以把任何对象传递给file()方法,而它将尝试将其转换为一个绝对路径的File对象。通常情况下,你会传给它一个String或File的实例。而所提供的这个对象的tostring()方法的值会作为文件路径。如果这个路径是一个绝对路径,它会用于构构一个File实例。否则,会通过先计算所提供的翻译 2014-11-14 08:46:57 · 16254 阅读 · 0 评论 -
Gradle 1.12 翻译——第十七章. 从 Gradle 中调用 Ant
Gradle 提供了对 Ant 的优秀集成您可以在你的 Gradle 构建中,使用单独的 Ant 任务或整个 Ant 构建。事实上,你会发现在 Gradle 中使用 Ant 任务比使用 Ant 的XML 格式更容易也更强大。你甚至可以只把 Gradle 当作一个强大的 Ant 任务脚本的工具。Ant 可以分为两层。第一层是 Ant 的语言。它提供了用于build.xml,处理的目标,特殊的构造方法比如宏,还有其他等等的语法。换句话说,除了 Ant 任务和类型之外全部都有。Gradle 理解这种语言,并允翻译 2014-11-17 08:46:45 · 7753 阅读 · 0 评论 -
Gradle 1.12 翻译——第十八章. 日志
日志是构建工具的主要界面。如果日志太多,真正的警告和问题容易被隐藏。另一方面,如果出了错,你需要找出相关的信息。Gradle 定义了6个日志级别,如表 18.1,“日志级别”所示。除了那些您通过可能会看到的日志级别之外,有两个 Gradle 特定日志级别。这两个级别分别是 QUIET 和 LIFECYCLE. 默认使用后面的这个日志级别,用于报告构建进度。表 18.1. 日志级别Level 用于ERROR 错误消息QUIET 重要的信息消息WARNING 警告消息LIFECYCLE 进度信息翻译 2014-11-18 09:11:45 · 8242 阅读 · 1 评论 -
Gradle 1.12翻译——第十九章. Gradle 守护进程
19.1. 走进守护进程Gradle 守护进程(有时也称为构建守护进程) 的目的是改善 Gradle 的启动和执行时间。我们准备了几个守护进程非常有用的用例。对于一些工作流,用户会多次调用 Gradle,以执行少量的相对快速的任务。举个例子:当使用测试驱动开发时,单元测试会被执行多次。当开发一个 web 应用程序中,应用程序会被组装多次。当发现构建能做什么,在gradle tasks在哪里会执行多次。对以上各种工作流来说,让调用 Gradle 的启动成本尽可能小会很重要。此外,如果可以相翻译 2014-11-21 08:45:43 · 6363 阅读 · 0 评论 -
Gradle笔记——构建基础
本篇文章主要介绍一下Gradle的构建基础。它看起来似乎和android项目没多大关系,不能让人一下子理解android项目中的Gradle配置文件,但是这篇基础真的很重要。学习Gradle前,需要有一个Groovy语言的基础,以免被Groovy的语法困扰,反而忽略了Gradle的知识。这里有一个Groovy的简明中文教程文档,可以快速学习Groovy的一些语法:http://download原创 2014-10-21 12:27:30 · 50431 阅读 · 3 评论 -
Gradle 笔记——Java构建入门
Gradle是一个通用的构建工具,通过它的构建脚本你可以构建任何你想要实现的东西,不过前提是你需要先写好构建脚本的代码。而大部分的项目,它们的构建流程基本是一样的,我们不必为每一个工程都编写它的构建代码,因为Gradle已经为我们提供了相应的插件。Gradle 本身自带了许多插件,而对于Gradle没有的插件,可以去github上看看有没有其他人实现,或自己实现。对Java项目而言,Gradle有原创 2014-10-31 17:20:07 · 28877 阅读 · 1 评论 -
Gradle 1.12翻译——第二十章. 构建环境
第二十章. 构建环境20.1. 通过 gradle.properties 配置构建环境Gradle 提供了几个选项,可以很容易地配置将用于执行您的构建的 Java 进程。当可以通过 GRADLE_OPTS 或 JAVA_OPTS 在你的本地环境中配置这些选项时,如果某些设置如 JVM 内存设置, Java home, 守护进程的开/关,它们可以和你的项目在你的版本控制系统中被版本化的话,将会更有用,这样整个团队就可以使用一致的环境了。在你的构建当中,建立一致的环境,就和把这些配置放进 gradle.pr翻译 2014-11-25 08:34:39 · 4142 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第二十一章. Gradle 插件
第二十一章. Gradle 插件Gradle 在它的核心中有意地提供了一些小但有用的功能,用于在真实世界中的自动化。所有有用的功能,例如以能够编译 Java 代码为例,都是通过插件进行添加的。插件添加了新任务 (例如JavaCompile),域对象 (例如SourceSet),约定(例如主要的 Java 源代码是位于src/main/java),以及扩展的核心对象和其他插件的对象。在这一章中,我们将讨论如何使用插件以及术语和插件相关的概念。21.1. 应用插件插件都认为是被应用,通过Projec翻译 2014-12-17 09:23:01 · 8314 阅读 · 1 评论 -
Gradle实现的两种简单的多渠道打包方法
本来计划今天发Android的官方技术文档的翻译——《Gradle插件用户指南》的第五章的,不过由于昨天晚上没译完,还差几段落,所以只好推后了。今天就说一下使用Gradle进行类似友盟这样的多渠道打包的方法吧。目前我掌握的方法有两种,都非常简单,用的都是Gradle Android插件里的productFlavors。以友盟的多渠道打包为例,假设我们需要打包出如下渠道:UMENG, WANDOUJIA, YINGYONGBAO。第一种方法,是需要创建文件的。我们在写完我们的代码之后,在app/sr原创 2014-12-18 09:07:46 · 58913 阅读 · 27 评论 -
Could not find property 'outputFile
* What went wrong: A problem occurred configuring project ':app'.> Could not find property 'outputFile' on com.android.build.gradle.internal.api.ApplicationVariantImpl_Decorated@7d035e8.原创 2014-11-21 15:25:31 · 12994 阅读 · 1 评论 -
Gradle 1.12 翻译——第十二章 使用Gradle 图形用户界面
有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com/1.12/userguide/userguide.html本文原创,转载请注明出处:http://blog.csdn.net/maosidiaoxian/article/details/40翻译 2014-11-09 14:55:36 · 4531 阅读 · 2 评论 -
Gradle 1.12用户指南翻译——第二十三章. Java 插件
第二十三章. Java 插件Java 插件向一个项目添加了 Java 编译、 测试和 bundling 的能力。它是很多其他 Gradle 插件的基础服务。23.1. 用法要使用 Java 插件,请在构建脚本中加入:示例 23.1. 使用 Java 插件build.gradleapply plugin: 'java'23.2 源集Java 插件引入了一个源集的概念。一个源集只是一组用于编译并一起执行的源文件。这些源文件可能包括 Java 源代码文件和资源文件。其他有一些插件添加了在源集翻译 2015-04-29 09:13:41 · 11680 阅读 · 4 评论 -
Gradle 1.12用户指南翻译——第二十二章. 标准的 Gradle 插件
第二十二章. 标准的 Gradle 插件Gradle 的发行包中有大量的插件。如下列所示:22.1. 语言插件这些插件添加了让各种语言可以被编译和在JVM执行的支持。表 22.1. 语言插件插件 Id 自动应用 与什么插件一起使用 描述java java-base - 向一个项目添加 Java 编译、 测试和捆绑的能力。它是很多其他 Gradle 插件的基础服务。另请参阅第 7 章, Java 快速入门。groovy java, groovy-base - 添加对 Groovy 项翻译 2015-04-27 09:09:50 · 2690 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第三十章. CodeNarc 插件
第三十章. CodeNarc 插件CodeNarc 插件使用CodeNarc对项目的 Groovy 源文件执行质量检查并生成报告。30.1. 用法要使用 CodeNarc 插件,请在构建脚本中包含以下语句:示例 30.1. 使用 CodeNarc 插件build.gradleapply plugin: 'codenarc'该插件向你的项目添加了大量的执行质量检查的任务。你可以通过运行gradle check执行检查。30.2. 任务CodeNarc 插件向project 中添加了以翻译 2015-05-11 09:10:38 · 2135 阅读 · 0 评论 -
Gradle笔记——Gradle的简介与安装
这一篇博客,主要是面向对Gradle有所耳闻,但却没有一个比较清晰的概念的。在这篇博客里,将对Gradle进行一个简单的介绍,以及它的安装。Gradle介绍Gradle是一个基于JVM的构建工具,它提供了:像Ant一样,通用灵活的构建工具可以切换的,基于约定的构建框架强大的多工程构建支持基于Apache Ivy的强大的依赖管理支持maven, Ivy仓库支持传递性依赖管原创 2014-10-15 13:22:40 · 249886 阅读 · 13 评论 -
Gradle 1.12用户指南翻译——第三十一章. FindBugs 插件
第三十一章. FindBugs 插件FindBugs 插件使用FindBugs对项目的 Java 源文件执行质量检查,并从检查结果中生成报告。31.1. 用法要使用 FindBugs 插件,请在构建脚本中包含以下语句:示例 31.1. 使用 FindBugs 插件build.gradleapply plugin: 'findbugs'该插件向你的项目添加了大量的执行质量检查的任务。你可以通过运行gradle check执行检查。31.2. 任务FindBugs 插件向project翻译 2015-05-12 09:05:58 · 4698 阅读 · 1 评论 -
Gradle 1.12用户指南翻译——第二十七章. Ear 插件
第二十七章. Ear 插件Ear 插件添加了用于组装 web 应用程序的 EAR 文件的支持。它添加了一个默认的EAR archive task。它不需要 Java 插件,但是对于使用了 Java 插件的项目,它将禁用默认的 JAR archive 的生成。27.1. 用法要使用 Ear 的插件,请在构建脚本中包含以下语句:示例 27.1. 使用 Ear 插件build.gradleapply plugin: 'ear'27.2. TasksEar 插件向project 中添加了以下任翻译 2015-05-06 09:13:17 · 2131 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第二十四章. Groovy 插件
第二十四章. Groovy 插件Groovy 的插件继承自 Java 插件并添加了对 Groovy 项目的支持。它可以处理 Groovy 代码,以及混合的 Groovy 和 Java 代码,甚至是纯 Java 代码(尽管我们不一定推荐使用)。该插件支持联合编译,可以任意地混合及匹配Groovy 和 Java 代码各自的依赖。例如,一个 Groovy 类可以继承自一个 Java 类,而这个 Java 类也可以继承自一个 Groovy 类。这样一来,我们就能够在项目中使用最适合的语言,并且在有需要的情况下用其翻译 2015-04-30 09:06:11 · 2210 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第二十六章. War 插件
第 26 章. War 插件War 的插件继承自 Java 插件并添加了对组装 web 应用程序的 WAR 文件的支持。它禁用了 Java 插件生成默认的 JAR archive,并添加了一个默认的 WAR archive 任务。26.1. 用法要使用 War 的插件,请在构建脚本中包含以下语句:示例 26.1. 使用War 插件build.gradleapply plugin: 'war'26.2. 任务War 插件向project 中添加了以下任务。表 26.1. War 插件翻译 2015-05-05 09:06:39 · 3010 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第二十八章. Jetty 插件
第二十八章. Jetty 插件Jetty 插件继承自 War 插件,并添加一些任务,这些任务可以让你在构建时部署你的 web 应用程序到一个 Jetty 的 web 嵌入式容器中。28.1. 用法要使用 Jetty 的插件,请在构建脚本中包含以下语句:示例 28.1. 使用 Jetty 插件build.gradleapply plugin: 'jetty'28.2. 任务Jetty 插件定义了以下任务:表 28.1. Jetty 插件 - 任务任务名称 依赖于 类型 描述je翻译 2015-05-07 09:08:22 · 2159 阅读 · 2 评论 -
Gradle 1.12用户指南翻译——第二十五章. Scala 插件
第二十五章. Scala 插件Scala 的插件继承自 Java 插件并添加了对 Scala 项目的支持。它可以处理 Scala 代码,以及混合的 Scala 和 Java 代码,甚至是纯 Java 代码(尽管我们不一定推荐使用)。该插件支持联合编译,联合编译可以通过 Scala 及 Java 的各自的依赖任意地混合及匹配它们的代码。例如,一个 Scala 类可以继承自一个 Java 类,而这个 Java 类也可以继承自一个 Scala 类。这样一来,我们就能够在项目中使用最适合的语言,并且在有需要的情况翻译 2015-05-04 09:12:22 · 3843 阅读 · 1 评论 -
Gradle 1.12用户指南翻译——第二十九章. Checkstyle 插件
第二十九章. Checkstyle 插件Checkstyle 插件使用Checkstyle对你的项目的 Java 源文件执行质量检查,并从检查结果中生成报告。29.1. 用法要使用 Checkstyle 插件,请在构建脚本中包含以下语句:示例 29.1. 使用 Checkstyle 插件build.gradleapply plugin: 'checkstyle'该插件向你的项目添加了大量的执行质量检查的任务。你可以通过运行gradle check执行检查。29.2. TasksCh翻译 2015-05-08 09:04:49 · 5053 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第三十二章. JDepend 插件
第三十二章. JDepend 插件JDepend 插件使用JDepend对项目的源文件执行质量检查,并从检查结果中生成报告。32.1. 用法要使用 JDepend 插件,请在构建脚本中包含以下语句:示例 32.1. 使用 JDepend 插件build.gradleapply plugin: 'jdepend'该插件向你的项目添加了大量的执行质量检查的任务。你可以通过运行gradle check执行检查。32.2. 任务JDepend 插件向project 中添加了以下任务:翻译 2015-06-25 09:55:08 · 1830 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第三十三章. PMD 插件
第三十三章. PMD 插件PMD 插件使用PMD对项目的 Java 源文件执行质量检查,并从检查结果中生成报告。33.1. 用法要使用 PMD 插件,请在构建脚本中包含以下语句:示例 33.1. 使用 PMD 插件build.gradleapply plugin: 'pmd'该插件向你的项目添加了大量的执行质量检查的任务。你可以通过运行gradle check执行检查。33.2. 任务PMD 插件向project 中添加了以下任务:表 33.1. PMD 插件 - 任务任务翻译 2015-06-26 09:48:24 · 2657 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第三十四章. JaCoCo 插件
第三十四章. JaCoCo 插件JaCoCo 插件目前还是孵化中状态。请务必注意,在以后的 Gradle 版本中,DSL 和其他配置可能会有所改变。JaCoCo 插件通过集成JaCoCo为 Java 代码提供了代码覆盖率指标。34.1. 入门要想开始,请将 JaCoCo 插件应用于你想要计算代码覆盖率的项目中。示例 34.1. 应用 JaCoCo 插件build.gradleapply plugin: "jacoco"如果 Java 插件也被应用于你的项目,那么会创建一个名为jacoc翻译 2015-06-29 09:08:36 · 5761 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第三十六章. Sonar Runner 插件
第三十六章. Sonar Runner 插件Sonar runner 插件是目前仍是孵化状态。请务必注意,在以后的 Gradle 版本中,DSL 和其他配置可能会有所改变。Sonar Runner 插件提供了对 Sonar,一个基于 web 的代码质量监测平台的集成。它基于Sonar Runner,一个分析源代码及构建输出,并将所有收集的信息储存在 Sonar 数据库的 Sonar 客户端组件。相比单独使用 Sonar Runner,Sonar Runner 插件提供了以下便利:自动配置 Sonar翻译 2015-07-08 09:13:56 · 2687 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第三十七章. OSGi 插件
第三十七章. OSGi 插件OSGi 插件提供了工厂方法来创建一个OsgiManifest对象。OsgiManifest 继承自 Manifest。要了解常见的清单处理的更多信息,请参阅第 23.13.1节,“Manifest”。如果应用了 Java 插件,OSGi 插件将把默认 jar 的 manifest 对象替换为一个OsgiManifest对象。被替换的manifest 会被合并到新的对象单中。OSGi 插件使 Peter Kriens BND tool 大量使用。37.1. 用法要使用翻译 2015-07-10 09:05:20 · 2490 阅读 · 0 评论 -
Gradle 1.12用户指南翻译——第三十五章. Sonar 插件
第三十五章. Sonar 插件你可能会想使用新的Sonar Runner 插件来代替现在这个插件。尤其是因为只有 Sonar Runner 插件支持 Sonar 3.4 及更高的版本。Sonar 插件提供了对 Sonar,一个基于 web 的代码质量监测平台的集成。该插件添加了sonarAnalyze task ,用来分析一个project 及子project 都应用了哪个插件。分析结果存储于 Sonar 数据库中。该插件基于Sonar Runner,并要求是 Sonar 2.11 或更高的版本。S翻译 2015-07-06 09:00:11 · 3181 阅读 · 0 评论 -
使用Gradle发布Android开源项目到JCenter
喜欢做些开源项目的朋友,相信有不少人都希望能把自己的项目发布到公共的中央仓库,如maven中央仓库,以供别人方便地集成使用。而使用了Android Studio的同学,应该也对gradle和jcenter印象深刻,不少开源库都是发布到这里的。这一篇就主要来介绍一下,如何使用Gradle发布到jcenter。原创 2015-01-26 09:41:29 · 46766 阅读 · 61 评论