我正在尝试包含已编译的 .class 来自 的文件项目1 放入 jar 中以获得项目2 因为我的项目结构需要它来完成。为此,在 build.gradle 对于 项目2 , 我写 :
jar {
from project(':Project1').sourceSets.main.output.classesDir
}
哪个成功地完成了我必须做的事情。 但是,我现在想过滤一些基于路径和/或某种模式添加的类。例如,要仅包含委托(delegate)文件,我尝试了以下操作:
jar {
from project(':Project1').sourceSets.main.output.classesDir {
include '**/*Delegate*.class'
}
}
但不幸的是,它不起作用。有没有办法在 Gradle/Groovy 中实现这一点?
最佳答案
使用 Gradle 2.12,以下对我有用(这是项目 2 的 build.gradle
):
task myBuild(type: Jar) {
baseName "myjar"
from project(':Project1').sourceSets.main.output.classesDir,
{ include "**/*Delegate*.*" }
}
来自 the doc for Jar.from ,请注意它需要 2 个参数(因此,使用逗号)。
关于gradle - 从已编译的源集中过滤类文件以添加到 Gradle/Groovy 的 JAR 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37043960/