源集

API 文档源集

SourceSet 表示一组逻辑上的 Java 源文件和资源文件。它们在用户手册中有更详细的介绍。

以下示例展示了如何配置“main”源集,在此示例中,它排除了包名以“some.unwanted.package”开头的类,使其不参与“java”SourceDirectorySet 中源文件的编译。

plugins {
    id 'java'
}

sourceSets {
  main {
    java {
      exclude 'some/unwanted/package/**'
    }
  }
}

属性

属性描述
所有 Java

此源集的所有 Java 源文件。这包括例如直接编译的源和通过联合编译间接编译的源。

所有源

此源集的所有源文件。

编译类路径

用于编译此源的类路径。

扩展

扩展容器。

Java

将由 Java 编译器编译到类输出目录中的 Java 源。

名称

此源集的名称。

输出

SourceSetOutput 是所有输出目录(已编译的类、已处理的资源等)的FileCollection,它提供配置默认输出目录和注册额外输出目录的方法。请参阅SourceSetOutput中的示例。

资源

将复制到资源输出目录中的非 Java 资源。

运行时类路径

用于执行此源的类路径。

antlr 插件添加的属性

属性描述
Antlr

Antlr 插件添加的AntlrSourceDirectorySet

groovy 插件添加的属性

属性描述
Groovy

groovy 插件添加的GroovySourceDirectorySet

scala 插件添加的属性

属性描述
Scala

Scala 插件添加的ScalaSourceDirectorySet

方法

方法描述
compiledBy(taskPaths)

注册一组负责将此源集编译到类目录中的任务。路径的评估方式与Task.dependsOn(java.lang.Object[])相同。

getCompileTaskName(language)

返回此源集的编译任务名称。

getTaskName(verb, target)

返回此源集的任务名称。

java(configureAction)

配置此源集的 Java 源。

resources(configureAction)

配置此源集的非 Java 资源。

脚本块

描述
Java

配置此源集的 Java 源。

资源

配置此源集的非 Java 资源。

antlr插件添加的脚本块

描述
Antlr

配置由 antlr 插件添加的AntlrSourceDirectorySet

groovy插件添加的脚本块

描述
Groovy

配置由 groovy 插件添加的GroovySourceDirectorySet

scala插件添加的脚本块

描述
Scala

配置由 Scala 插件添加的ScalaSourceDirectorySet

属性详情

SourceDirectorySet allJava(只读)

此源集的所有 Java 源文件。这包括例如直接编译的源和通过联合编译间接编译的源。

默认与java插件一起使用
[java]

SourceDirectorySet allSource(只读)

此源集的所有源文件。

默认与java插件一起使用
[java, resources]

FileCollection compileClasspath

用于编译此源的类路径。

默认与java插件一起使用
project.configurations.compileClasspath(或对于test源集,为project.configurations.testCompileClasspath)。

ExtensionContainer extensions(只读)

扩展容器。

SourceDirectorySet java(只读)

将由 Java 编译器编译到类输出目录中的 Java 源。

默认与java插件一起使用
[${project.projectDir}/src/${sourceSet.name}/java]

String name(只读)

此源集的名称。

SourceSetOutput output(只读)

SourceSetOutput 是所有输出目录(已编译的类、已处理的资源等)的FileCollection,它提供配置默认输出目录和注册额外输出目录的方法。请参阅SourceSetOutput中的示例。

默认与java插件一起使用
请参阅SourceSetOutput

SourceDirectorySet resources(只读)

将复制到资源输出目录中的非 Java 资源。

默认与java插件一起使用
[${project.projectDir}/src/${sourceSet.name}/resources]

FileCollection runtimeClasspath

用于执行此源的类路径。

默认与java插件一起使用
sourceSet.output + project.configurations.runtimeClasspath(或对于test源集,为sourceSet.output + project.configurations.testRuntimeClasspath)。

AntlrSourceDirectorySet antlr(只读)

Antlr 插件添加的AntlrSourceDirectorySet

GroovySourceDirectorySet groovy(只读)

groovy 插件添加的GroovySourceDirectorySet

ScalaSourceDirectorySet scala(只读)

Scala 插件添加的ScalaSourceDirectorySet

方法详情

SourceSet compiledBy(Object... taskPaths)

注册一组负责将此源集编译到类目录中的任务。路径的评估方式与Task.dependsOn(java.lang.Object[])相同。

String getCompileTaskName(String language)

返回此源集的编译任务名称。

String getTaskName(String verb, String target)

返回此源集的任务名称。

SourceSet java(Action<? super SourceDirectorySet> configureAction)

配置此源集的 Java 源。

给定的动作用于配置包含 Java 源的SourceDirectorySet

SourceSet resources(Action<? super SourceDirectorySet> configureAction)

配置此源集的非 Java 资源。

给定的动作用于配置包含资源的SourceDirectorySet

脚本块详情

java { }

配置此源集的 Java 源。

给定的闭包用于配置包含 Java 源的SourceDirectorySet

委托给
来自javaSourceDirectorySet

resources { }

配置此源集的非 Java 资源。

给定的闭包用于配置包含资源的SourceDirectorySet

委托给
来自resourcesSourceDirectorySet

antlr { }

配置由 antlr 插件添加的AntlrSourceDirectorySet

groovy { }

配置由 groovy 插件添加的GroovySourceDirectorySet

scala { }

配置由 Scala 插件添加的ScalaSourceDirectorySet