1

如下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

这是ProtobufIntellij 的一个已知问题吗?如何修复自动编译以理解TestEventOrBuilder

4

0 回答 0