这里是 gradle 的新手,我需要从我的依赖项项目的资源文件夹中(递归地)移动所有资源,包括当前编译的项目和具有特定名称的 concat 文件,即
dependencies {
compile project(':stam-common')
compile project(':stam-db-common')
compile project(':stam-reco')
}
假设我正在编译项目 stam-this,这取决于上面的模块。
我需要将四个项目中的每个项目及其依赖项中的所有文件移动到一个位置并连接所有 application.conf 文件。
我可以用一些 bash 脚本轻松地做到这一点,但需要它成为一个 gradle 任务。
任何的想法 ?
最佳答案
取决于您的 application.conf
中的内容您可能需要更复杂的东西,但简单的答案就是向每个项目询问该文件并将它们组合起来。
我们可以使用Java的streams
api 和一些 Groovy 的 File#text
简化 concat 循环
def allAppConfs = rootProject.subprojects.stream().
// using `Project#file(String)` the path will be
// relative to the project's root
map({ proj -> proj.file('src/main/resources/application.conf').text }).
collect(Collectors.toList()).
join('\n')
关于java - 如何将 gradle 多项目中的所有依赖项资源收集到 dist 文件夹中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42695956/