1

我想用 My.proto 生成 java 类:

package com.my.test;

option java_package = "com.my.test";

message MyError {
  optional string value = 11;
  optional string name = 12;
}

message MyRequest {
  optional string myid = 1;
  optional string yourid = 2;
}

使用后protoc --java_out=./ My.proto会有:com.my.test.My.java

package com.my.test;

public class My {
  public static class MyError {}
  public static class MyRequest {}
}

我怎么能生成像这样的java类:

package com.my.test;
public class MyError {}

package com.my.test;
public class MyRequest {}
4

1 回答 1

0

您可以导入内部类,而不是尝试生成没有外部类的类:

import com.my.test.My.MyError;
import com.my.test.My.MyRequest;

或者,如果您使用的是 proto3:

syntax = "proto3";
option java_multiple_files = true;
于 2020-06-11T07:33:55.257 回答