Gradle Groovy 插件


本文整理自网络,侵删。

Groovy 插件

Groovy 的插件继承自 Java 插件并添加了对 Groovy 项目的支持。它可以处理 Groovy 代码,以及混合的 Groovy 和 Java 代码,甚至是纯 Java 代码(尽管我们不一定推荐使用)。该插件支持联合编译,可以任意地混合及匹配 Groovy 和 Java 代码各自的依赖。例如,一个 Groovy 类可以继承自一个 Java 类,而这个 Java 类也可以继承自一个 Groovy 类。这样一来,我们就能够在项目中使用最适合的语言,并且在有需要的情况下用其他的语言重写其中的任何类。

用法

要使用 Groovy 的插件,请在构建脚本中包含以下语句:

使用 Groovy 插件

build.gradle

apply plugin: 'groovy'  

任务

Groovy 的插件向 project 中添加了以下任务。

表 24.1. Groovy 插件 - 任务

任务名称 依赖于 类型 描述
compileGroovy compileJava GroovyCompile 编译production 的 Groovy 源文件。
compileTestGroovy compileTestJava GroovyCompile 编译test 的 Groovy 的源文件。
SourceSetGroovy SourceSetJava GroovyCompile 编译给定的 source set 里的 Groovy 源文件。
groovydoc - Groovydoc 为 production 里的 Groovy 源文件生成 API 文档。

Groovy 的插件向 Java 插件所加入的 tasks 添加了以下的依赖。

表 24.2. Groovy 插件 - 额外的 task 依赖

任务名称 依赖于
classes compileGroovy
testClasses compileTestGroovy
sourceSetClasses compileSourceSetGroovy

图 24.1. Groovy 插件 - tasks

项目布局

Groovy 的插件会假定项目的布局如表 24.3,“Groovy 插件 - 项目布局”中所示。所有 Groovy 的源目录都可以包含 Groovy 和 Java 代码。Java 源目录只能包含 Java 源代码。这些目录不一定得存在或是里面包含有什么内容;Groovy 的插件只会进行编译,而不管它发现什么。

表 24.3. Groovy 插件 - 项目布局

目录 意义
src/main/java 产品的Java源代码
src/main/resources 产品的资源
src/main/groovy Production Groovy 源代码。此外可能包含联合编译的 Java 源代码。
src/test/java Java 测试源代码
src/test/resources 测试资源
src/test/groovy Test Groovy 源代码。此外可能包含联合编译的 Java 源代码。
sourceSet/java 给定的源集的Java源代码
sourceSet/resources 给定的源集的资源
sourceSet/groovy 给定的source set 的 Groovy 源代码。此外可能包含联合编译的 Java 源代码。

更改项目布局

和 Java 插件一样,Groovy 插件允许把 Groovy 的 production 和 test 的源文件配置为自定义的位置。

自定义 Groovy 自定义源文件布局

build.gradle

sourceSets {
    main {
        groovy {
            srcDirs = ['src/groovy']
        }
    }
    test {
        groovy {
            srcDirs = ['test/groovy']
        }
    }
}  

依赖管理

由于 Gradle 的构建语言基于 Groovy 的,且部分的 Groovy 使用 Groovy 实现,因此 Gradle 已经带有了一个 Groovy 库 (截至 Gradle 1.6 所带的 Groovy 库的版本是 1.8.6)。然而,Groovy 项目需要显式地声明一个 Groovy 依赖。这个依赖会在编译和运行的类路径时用到。它还将用于分别获取 Groovy 编译器及 Groovydoc 工具。

如果 Groovy 用于 production 代码,Groovy 依赖应该添加到 compile 配置中:

Groovy 的依赖配置

build.gradle
repositories {
    mavenCentral()
}
dependencies {
    compile 'org.codehaus.groovy:groovy-all:2.2.0'
}  

如果 Groovy 仅用于测试代码,Groovy 的依赖应该被添加到 testCompile 配置中:

配置 Groovy 测试依赖

阅读剩余部分

相关阅读 >>

Gradle sonar runner 插件

Gradle pmd 插件

Gradle groovy 插件

Gradle codenarc 插件

Gradle 教程 - 杂七杂八

Gradle 构建环境

Gradle Gradle 守护进程

Gradle Gradle 命令行的基本使用

Gradle 构建基础

Gradle 标准的 Gradle 插件

更多相关阅读请进入《Gradle》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...