由于尚未配置test-data-proto-definition,因此以下内容不起作用,因此sourceSets.main.proto不存在:

sourceSets {
  main {
    proto {
      srcDirs = project(':test-data-proto-definition').sourceSets.main.proto.srcDirs
    }
  }
}

以下内容也不符合预期目的:
generateProtoTasks {
    all().each { task ->
        project.sourceSets.main.proto.srcDirs = ["${project(':test-data-proto-definition').projectDir}/src/main/proto" as String]
    }
}

需要什么才能引用另一个子项目的proto.srcDirs

最佳答案

这里的问题是尚未配置子项目test-data-proto-definitionConfiguration time dependencies指示使用evaluationDependsOn应该可以解决此问题。例如:

evaluationDependsOn(':test-data-proto-definition')

关于gradle - 如何基于另一个子项目的原始源目录设置原始源目录?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43822474/

10-12 23:18