如下example.proto
:
syntax = "proto3";
package pack;
option java_package = "pack";
option java_multiple_files = true;
message TestEvent {
int32 id = 1;
}
并用 Protoc 生成它,生成了一些类:
- Example.java
- 测试事件.java
- TestEventOrBuilder.java
问题是自动生成的 TestEvent 类无法编译。它的类声明生成为
public final class TestEvent extends com.google.protobuf.GeneratedMessageV3 implements TestEventOrBuilder {
//... Auto-generated class
}
但TestEevent
不 import TestEventOrBuilder
,这就是它不编译的原因(问题很简单cannot resolve symbol TestEventOrBuilder
),根据 Intellij。尝试以自己的方式解决时,Intellij IDEA
将课程更改为
public final class TestEvent extends com.google.protobuf.GeneratedMessageV3 implements pack.TestEventOrBuilder
这是Protobuf
Intellij 的一个已知问题吗?如何修复自动编译以理解TestEventOrBuilder
?