您好我有一个Gradle模块,根据.proto文件生成协议缓冲区的类,并将其打包为.jar和另一个导入该jar的模块。生成的类存在于jar中,但IntelliJ看不到它们。
带.proto定义的模型模块:
description = ''
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath "com.google.protobuf:protobuf-gradle-plugin:0.7.7"
}
}
dependencies {
compile 'com.google.protobuf:protobuf-java:2.6.1'
}
apply plugin: 'java'
apply plugin: "com.google.protobuf"
protobuf {
protoc {
artifact = 'com.google.protobuf:protoc:2.6.1'
}
}
控制器模块导入模型。
description = ''
dependencies {
compile project(':models')
}
问题是当我尝试在控制器中使用生成的Models类时,IntelliJ看不到它们。
答案 0 :(得分:3)
解决方案我发现:
添加到以下行的构建:
sourceSets {
main {
java {
srcDirs = ["src/main/java", "${protobuf.generatedFilesBaseDir}/main/java"]
}
}
}