我正在使用某种gradle任务链来下载swagger.yaml,使用Gradle Swagger Gernerator Plugin生成代码,从生成的代码中创建一个.jar文件,然后将其上传到私有Nexus服务器 .

至少,这就是我的生活 . 如果生成的代码不存在,则整个链失败 .

我有一个自定义任务将它们链接在一起,看起来像这样:

task generate(type: GradleBuild) {
     tasks = ['downloadFile', 'generateSwaggerCode', ':subProject:jar', 'upload']
}

generateSwaggerCode 生成"subProject"中的代码,该代码包含在"settings.gradle": include subProject 中 . 这样,我就可以运行子项目的gradle任务了 . 这需要确保gradle还下载子项目的依赖项 . gradle plugin's readme表示可以通过挂钩到由于缺少刚刚生成的代码的依赖性而失败的compileJava任务,从根的gradle任务构建项目 .

事先调用 generateSwaggerCode 似乎一切正常,因此"subProject"已经存在 .

我正在寻找一种方法来忽略检查,或者调用生成的代码的gradle包装器,否则不会连续调用两个单独的任务 .