我需要遍历runtime dependencies
的列表,然后从jar中提取json
文件,分别放在文件夹jar name
中。
我尝试了下面的代码,但是它创建了一个文件夹,该文件夹的名称为读取的最后一个jar,并将所有json
文件放入其中,并保持了jar root
的路径。
task copyJsonToQrelease(type: Copy) {
configurations.runtime.each { File f ->
from zipTree(f)
include "**/*.json"
into "${viewRoot}/Qrelease/JsonResources/"+f.getName()
includeEmptyDirs = false
}
}
结果:Qrelease \ JsonResources \ netty-common-4.1.16.Final.jar \ release resources \ DummyService.json
预期结果:Qrelease \ JsonResources \ MyJarName \ DummyService.json
答案 0 :(得分:0)
jar文件的名称为netty-common-4.1.16.Final.jar
。
所以MyJarName
部分应该正确,对吧?
release-resources\DymmyService.json
是json文件的名称。
因此,您要rename json文件。
这应该适用于Windows(未经测试):
rename(/.*\\(.+json)/, '$1')
当心-此正则表达式特定于操作系统。更好:构建正则表达式操作系统所依赖的。