2
我以下的项目结构是这样的:自定义任务不运行
.
├── build.gradle
├── out.txt
├── Server
│ ├── build.gradle
│ ├── plugins
│ │ └── TestPlugin-0.1.0.zip
│ └── src
├── pluginApi
│ ├── build
│ ├── build.gradle
│ └── src
├── plugins
│ └── testPlugin
│ ├── build
│ │ ├── libs
│ │ │ └── TestPlugin-0.1.0.zip
│ ├── build.gradle
│ └── src
└── settings.gradle
现在我想创造主的build.gradle一个gradle这个任务应该做这样的事情:
- 删除服务器/插件的内容
- 为plugins /中的每个gradle项目执行“createZip”任务。例如。插件/ testPlugin:createZip
- 复制从每一个插件输出(插件//建立/库/ .zip文件)到服务器/插件
我设法写一个简单的任务,像这样:
task compilePluginsAndCopy() {
delete 'Server/plugins'
mkdir 'Server/plugins'
subprojects.each { p ->
if (p.path.contains("plugins/")) {
p.createZip
doLast {
copy {
from p.path.substring(1) + '/build/libs'
into 'Server/plugins'
}
}
}
}
}
当我现在运行此任务时,zip文件不会被创建,也不会被删除。 但是,当我在其中一个子项目上运行“createZip”任务时,compilePluginsAndCopy任务被执行。
请问有人能帮助我吗?