gradle 配置的使用方式
gradle how configurations is used
gradle war 插件中的示例:为什么需要像下面这样定义 moreLibs?请解释:
configurations {
moreLibs
}
dependencies {
moreLibs ":otherLib:1.0"
}
war {
classpath configurations.moreLibs
webXml = file('src/someWeb.xml')
}
我们可以在配置中定义任何东西吗?
configurations {
foobar
}
这些我在很多地方都见过。谁能解释一下?
是的,您可以在配置块中写入任何内容,它将使用该名称创建一个新配置,您还可以进一步配置它,例如。 G。通过将其 transitive
属性 设置为 false
和其他内容。
自定义配置只是一个名称,您可以为其定义依赖项,然后由 Gradle 自动传递解析,并且可用于需要这些已解析文件的各种用途。
在您的示例中,您定义了一个 moreLibs
配置,向其添加一个依赖项,该依赖项将由 Gradle 传递解析,然后添加到 wars lib
目录中。
如果您不需要,则不必执行此操作。 runtime
配置中的所有库(以及 compile
配置中的库)都会自动添加到 wars lib
目录中。但是如果你出于某种原因需要额外的库,你不想添加到 compile
或 runtime
,你可以这样做。
自定义配置有用的另一个示例是您要使用自定义 Ant 任务。您定义一个自定义配置,向其添加 Ant 任务依赖项,然后让 Gradle 传递解析它并可以将整个文件集作为类路径添加到 Ant 的任务定义中。
gradle war 插件中的示例:为什么需要像下面这样定义 moreLibs?请解释:
configurations {
moreLibs
}
dependencies {
moreLibs ":otherLib:1.0"
}
war {
classpath configurations.moreLibs
webXml = file('src/someWeb.xml')
}
我们可以在配置中定义任何东西吗?
configurations {
foobar
}
这些我在很多地方都见过。谁能解释一下?
是的,您可以在配置块中写入任何内容,它将使用该名称创建一个新配置,您还可以进一步配置它,例如。 G。通过将其 transitive
属性 设置为 false
和其他内容。
自定义配置只是一个名称,您可以为其定义依赖项,然后由 Gradle 自动传递解析,并且可用于需要这些已解析文件的各种用途。
在您的示例中,您定义了一个 moreLibs
配置,向其添加一个依赖项,该依赖项将由 Gradle 传递解析,然后添加到 wars lib
目录中。
如果您不需要,则不必执行此操作。 runtime
配置中的所有库(以及 compile
配置中的库)都会自动添加到 wars lib
目录中。但是如果你出于某种原因需要额外的库,你不想添加到 compile
或 runtime
,你可以这样做。
自定义配置有用的另一个示例是您要使用自定义 Ant 任务。您定义一个自定义配置,向其添加 Ant 任务依赖项,然后让 Gradle 传递解析它并可以将整个文件集作为类路径添加到 Ant 的任务定义中。