如何根据另一个子项目的原型源目录设置原型源目录?
How to set proto source directory based on another sub-project's proto source directory?
以下内容不起作用,因为 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-definition
还没有配置。 Configuration time dependencies 表示使用 evaluationDependsOn
应该可以解决问题。例如:
evaluationDependsOn(':test-data-proto-definition')
以下内容不起作用,因为 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-definition
还没有配置。 Configuration time dependencies 表示使用 evaluationDependsOn
应该可以解决问题。例如:
evaluationDependsOn(':test-data-proto-definition')