我是Java的新手,它是构建工具。在build.gradle
文件中,我没有在插件下看到java或javalibrary id,这让我想,以下哪个插件导致创建CompileJava任务(或称为Java插件),我在{{ 1}}如下
build.gradle
基于这些阅读,我不认为plugins {
id "jacoco"
id "org.springframework.boot" version "1.5.22.RELEASE"
id "com.abc.tools.aws.build.docker" version "2.0.2"
id "com.abc.tools.aws.build.abb-bom-management" version "2.0.2"
id "com.abc.tools.aws.build.microservice" version "2.0.2"
}
的任务之一就是编译Java。
答案 0 :(得分:2)
Gradle中的插件可以将 1 其他插件应用于项目,因为gradle project也是PluginAware
对象。
我的猜测是org.springframework.boot
是应用java
插件的那个。
确实,我刚刚检查了一下,they do应用了插件。
请注意,插件do not do this的更高版本。如果您不满意,最好更新您使用的版本,但是更高版本将需要gradle的更高版本。 ,因此请明智地升级。
1。 IMO,他们不应该这样做,应该依靠使用PluginManager.withPlugin
方法。
答案 1 :(得分:1)
Java插件将Java编译以及测试和捆绑功能以及compileJava
,test
,jar
等任务添加到项目中。有关here的更多信息。
plugins {
id 'java'
}
Jacoco是用于test coverage reporting的插件。
没有明确的方法可以从每个插件获取完整的任务列表,但是您可以在应用每个插件后打印任务差异,以查看插件列表的更改方式。
build.gradle
def tasksBefore = [], tasksAfter = []
project.tasks.each { tasksBefore.add(it.name) } // get all tasks
apply(plugin: 'jacoco') // apply plugin
project.tasks.each { tasksAfter.add(it.name) } // get all tasks
tasksAfter.removeAll(tasksBefore); // get the difference
println 'jacoco tasks: ' + tasksAfter;