gradle 生成的 类 的 ProtoBuf 在 IntelliJ 的另一个模块中不可见
ProtoBuffer generated classes by gradle are not visible in another module by IntelliJ
您好,我有一个 Gradle 模块可以根据 .proto 文件生成 Protocol Buffer 的 类 并将其打包为 .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')
}
问题是当我尝试在控制器中使用生成的模型时 类 IntelliJ 看不到它们。
我找到的解决方案:
将以下行添加到构建中:
sourceSets {
main {
java {
srcDirs = ["src/main/java", "${protobuf.generatedFilesBaseDir}/main/java"]
}
}
}
您好,我有一个 Gradle 模块可以根据 .proto 文件生成 Protocol Buffer 的 类 并将其打包为 .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')
}
问题是当我尝试在控制器中使用生成的模型时 类 IntelliJ 看不到它们。
我找到的解决方案:
将以下行添加到构建中:
sourceSets {
main {
java {
srcDirs = ["src/main/java", "${protobuf.generatedFilesBaseDir}/main/java"]
}
}
}