我正在尝试在gradle中的多个子项目之间共享公共静态文件。我的项目结构如下:
ParentProject
+ subProject1War/
+ subProject1War/
+ src/main/webapp/WEB-INF/
+ css/
+ subProject1/
+ subProject2/
+ common/
我不能为我的生活弄清楚如何将ParentProject的“common”和“subProject1”复制到subProject1War。
任何人都可以提供指导吗?
答案 0 :(得分:0)
您可以在subProject1War/build.gradle
中为其定义复制任务,然后使相关任务(可能是compileJava或processResources)依赖于它,以便在构建期间公共文件可用于这些任务。
如果您希望common
和subProject1
下的所有文件都位于subProject1War/src/css
下,那么您可以定义以下任务:
task copyCommon(type: Copy) {
def cssLib = new File(rootDir, "src/css")
from "$cssLib/common"
from "$cssLib/subProject1"
into "src/css"
}
如果您想将common
和subProject1
文件夹保留在subProject1War/src/css
下,那么您的任务将如下所示:
task copyCommon(type: Copy) {
from new File(rootDir, "src/css")
include "common/**"
include "subProject1/**"
into "src/css"
}