• Chapter 23. The Java Plugin 关于 Java 插件
    • 23.1. 用法
    • 23.2. Source set
    • 23.3. Task(任务)

    Chapter 23. The Java Plugin 关于 Java 插件

    Java 插件添加 Java 编译和测试、捆绑的能力到项目中。这是许多其他 Gradle 插件的基础。

    23.1. 用法

    使用 Java 插件,添加如下脚本

    Example 23.1. Using the Java plugin

    build.gradle

    1. apply plugin: 'java'

    23.2. Source set

    Java 插件引入了 source set 概念。 source set 就是一个源文件集合,用于编译和执行。这些源文件可能包含 Java 源文件和资源文件。其他插件添加这种包含 Groovy 和 Scala 源文件的能力。 source set 与编译 classpath 和运行时 classpath 关联。

    source set 的一个用途是将源文件进行逻辑分组,这样可以描述他们的目的。例如,你可能使用 source set 来定义一个继承测试套件,或者你可能使用独立的 source set 来定义 API 和项目类的实现。

    Java 插件定义了两个标准 source set ,称为 main 和 test。mian source set 包含您的生产源代码,并编译成一个 JAR 文件。test source set 包含您的测试源代码,这是使用 JUnit 和 TestNG 来编译和执行。这些可以是单元测试,集成测试,验收测试,或任何组合,对你非常有用。

    23.3. Task(任务)

    Java 插件添加了很多任务到你的项目中,如下:

    Table 23.1. Java plugin - tasks


































































    Task 名称依赖于类型描述

    compileJava
    所有任务产生编译 classpath。这包含了 jar 任务给项目依赖,包含在编译配置中
    JavaCompileCompiles production Java source files 使用 javac 产生编译 Java 源文件

    processResources
    -Copy拷贝生产资源到生产类目下

    classes

    compileJava 任务和processResources 任务。一些插件添加了额外的编译任务
    Task组装生产类目录

    compileTestJava

    compile, 加上所有的任务产生测试编译 classpath
    JavaCompile使用 javac 来编译测试 Java 源文件

    processTestResources
    -Copy拷贝测试源文件到测试类目录

    testClasses

    compileTestJava 任务和 processTestResources 任务。一些插件添加了额外的测试编译任务
    Task组装生产类目录

    jar

    compile
    Jar组装 JAR 文件

    javadoc
    compileJavadoc使用 Javadoc 产生 API 文档给生产的 Java 源文件

    test

    compile,
    compileTest,
    加上所有的任务产生的测试运行时的classpath
    Test使用 JUnit 或 TestNG 执行单元测试

    uploadArchives

    任务产生在 archives 配置中的的构件,包含了jar.
    Upload上传archives 配置的构件, 包含了 JAR 文件

    clean
    -Delete删除项目构建目录

    cleanTaskName
    -Delete删除特定任务的文件。cleanJar
    将会删除 jar任务生产的 JAR 文件,
    cleanTest 将会删除test 任务测试产生的结果

    For each source set you add to the project, the Java plugin adds the following compilation tasks: