我有以下项目结构
datatypes/
build.gradle
src/main/thrift/service.thrift
service/
build.gradle
/src/main/java/ServiceImpl.java
build.gradle
settings.gradle
我使用yodle / gradle作为gradle插件从thrift生成java源代码并编译它们。正在datatypes
按预期生成源和jar文件。
在service/build.gradle
中,我将依赖关系定义为:
dependencies {
compile project(':datatypes')
}
正在运行gradle build
非常合适;我唯一的问题是在工作中的想法。将此作为gradle模块导入后,我无法在ServiceImpl.java
中识别thrift中定义的类型。
如何将datatypes/build/libs/
中的jar包含为service
的依赖项?
谢谢!
答案 0 :(得分:0)
问题实际上是由yodle/griddle
插件设置的默认thrift生成的java源路径位于build/
文件夹中。我刚在datatypes/build.gradle
thriftGenDir = 'src/main'
现在java代码在src/main/gen-java
中生成,它被作为dataypes
的来源选择,并用它来为依赖datatypes
的任何人定义类型。