You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将任务输出添加至SourceSet的srcDir并使其自动在compileGenJava前执行?

Gradle配置:将生成任务输出目录加入SourceSet并指定执行顺序

要实现你需要的效果,只需要两步:把生成任务的输出目录关联到目标SourceSet,同时给编译任务添加依赖确保执行顺序。

完整配置示例

// 如果你还没定义generateSources任务,先补全任务配置(已定义可跳过)
task generateSources(type: 你的任务类型) {
    outputDir = file("${buildDir}/generated-sources/markup2pojo")
    // 这里添加生成任务的具体逻辑,比如读取模板、生成Java文件等
}

// 关联生成任务的输出目录到gen SourceSet
sourceSets  {
  gen {
    java {
      // 直接绑定任务的输出目录,比硬编码路径更可靠,后续改路径不用手动同步
      srcDir generateSources.outputDir
    }
  }
}

// 强制compileGenJava任务在generateSources执行完成后再运行
tasks.compileGenJava.dependsOn generateSources

关键说明

  • 用generateSources.outputDir替代硬编码路径:当你调整生成任务的输出目录时,SourceSet会自动同步,避免维护两套路径配置的麻烦。
  • 添加任务依赖:通过dependsOn明确声明依赖关系,Gradle的任务调度器会自动保证generateSources先执行,再启动compileGenJava编译生成的代码。

内容的提问来源于stack exchange,提问作者AndreasInfo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 12:15:39