我有一个 ShadowJar 和一个 Proguard 任务,它们在我的 Gradle 构建中生成两个 jar 文件。
task obfuscate(type: ProguardTask) {
outjars ..
}
shadowJar {
...
}
task release(type: Jar) {
from shadowJar
from obfuscate
classifier 'all'
}
我的问题是,在这种情况下,发布 jar 文件包含影子 jar 和混淆 jar 文件作为 jar 本身中的两个文件。我想将这些作为 zipTree 输入。
我的问题是我不知道如何将任务引用转换为该任务实际输出的 zipTree。
我的尝试导致我这样做,from zipTree(shadowJar.outputs.getFiles())
但这仍然失败:
> Cannot convert the provided notation to a File or URI: task 'shadowJar' output files.
The following types/formats are supported:
- A String or CharSequence path, for example 'src/main/java' or '/usr/include'.
- A String or CharSequence URI, for example 'file:/usr/include'.
- A File instance.
- A URI or URL instance.
如何正确引用上述任务的输出 jar 文件?