我正在尝试将多个依赖项提取到不同的目录中。我尝试了以下方法。
configurations {
cppDependencies
}
dependencies {
cppDependencies 'com.group:artifact1:1.0"
cppDependencies 'com.group:artifact2:1.0"
}
task extractDeps(type: Copy) {
from {
configurations.cppDependencies.collect {
zipTree(it)
}
}
into new File(buildDir, "DEP_DIR")
}
显然,这只是在同一 DEP_DIR 目录下提取 Artifact 1 和 Artifact 2 。但是我实际上想要实现的是分别在 DEP_DIR / artifact1 和 DEP_DIR / artifact2 下提取它们。
我试图将放入 zipTree 命令下的新File(buildDir,“DEP_DIR /” + it.artifactId)中,但它给出了错误。
这可能吗?
最佳答案
我找到了可行的解决方案。
不知道这是否是最好的方法,但这是我想到的:
task extractDeps << {
configurations.cppDependencies.resolvedConfiguration.resolvedArtifacts.each { artifact ->
copy {
from project.zipTree(artifact.getFile())
into new File(project.buildDir, "DEP_DIR/" + artifact.name)
}
}
}
关于java - Gradle将多个依赖项分别提取到不同目录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18490986/