Java 在Gradle中创建多个源集
我有一个项目,其中有不同的压缩档案文件夹。我想提取它们,并对每个进行一些检查。但我们希望报告被分开。例如pmd检查。 因此,要从每个zip文件中分离文件,必须在不同的资源集中和调用时进行Java 在Gradle中创建多个源集,java,gradle,pmd,Java,Gradle,Pmd,我有一个项目,其中有不同的压缩档案文件夹。我想提取它们,并对每个进行一些检查。但我们希望报告被分开。例如pmd检查。 因此,要从每个zip文件中分离文件,必须在不同的资源集中和调用时进行 gradle check 为每个目录生成带有检查的报告 输入文件: sources1.zip、sources2.zip、sources3.zip、sources4.zip 每个zip都包含单独的项目。 例如: src/main/java/sources1/Example.java src/main/java/
gradle check
为每个目录生成带有检查的报告
输入文件:
sources1.zip、sources2.zip、sources3.zip、sources4.zip
每个zip都包含单独的项目。
例如:
src/main/java/sources1/Example.java
src/main/java/sources2/App.java
。。。。
何时运行要生成的检查
build/reports/pmd/sources1SourceSet.html
build/reports/pmd/sources2SourceSet.html
build/reports/pmd/sources3SourceSet.html
build/reports/pmd/sources4SourceSet.html
因此,我想根据ZIP的名称声明不同的源集,而不是手动执行,但不知道如何执行
sourceSets {
sourcest1{
java {
srcDirs file("...")
}
}
}
有没有另一种简单的方法可以在不为每个zip创建新的源集的情况下进行单独检查?一种方法可以开始为每个zip创建专用任务。这可以在循环中完成:
["source1", "source2", "source3"].each{ sourceName ->
tasks.create("pmd${sourceName}", Pmd){
reports.html.reportsDir = "$buildDir/reports/pmd${sourceName}"
source = zipTree("file/to/$sourceName.zip")
...
}
}
干杯太棒了。但是reports.html.reportsDir=“$buildDir…”使Gradle抛出弃用警告弃用的动态属性:“reportsDir”在“Report html”上,值:“…”弃用的动态属性“reportsDir”在多个位置创建。对不起,我的错误,请使用“reports.html.destination=文件($buildDir/reports/pmd${sourceName}”)相反,要删除弃用消息