引入protobuf-java依赖
引入protobuf maven插件(protobuf-maven-plugin)com.google.protobuf protobuf-java${protobuf-java.version}
详细使用说明见网址Maven Protocol Buffers Plugin – Introductionhttps://www.xolstice.org/protobuf-maven-plugin/usage.html
os-maven-plugin具体使用说明参见github(https://github.com/trustin/os-maven-plugin)
Enabling os-maven-plugin on your Maven project
kr.motd.maven os-maven-plugin1.7.0
以下是一个完整的maven pom.xml示例
2.编写proto文件以及测试单元文件4.0.0 protobuf-democom.github.icefoxs 0.0.1-SNAPSHOT 3.19.2 1.24.0 1.43.2 1.17.0 4.12 junit junit${junit.version} io.grpc grpc-netty-shaded${grpc-java.version} io.grpc grpc-protobuf${grpc-java.version} io.grpc grpc-stub${grpc-java.version} io.grpc grpc-testing${grpc-java.version} test com.google.api.grpc proto-google-common-protos${proto-google-common-protos.version} com.google.protobuf protobuf-java${protobuf-java.version} kr.motd.maven os-maven-plugin1.7.0 org.xolstice.maven.plugins protobuf-maven-plugin0.5.0 com.google.protobuf:protoc:${protobuf-java.version}:exe:${os.detected.classifier} grpc-java io.grpc:protoc-gen-grpc-java:${grpc-java.version}:exe:${os.detected.classifier} compile compile-custom org.apache.maven.plugins maven-compiler-plugin11 11
syntax = "proto3";
option java_multiple_files = true;
option java_package = "com.github.icefoxs.protobuf.entitiy";
message User {
string name = 1;
int32 age = 2;
}
import com.google.protobuf.InvalidProtocolBufferException;
import com.github.icefoxs.protobuf.entitiy.User;
import org.junit.Test;
public class UserProtoTest {
@Test
public void test() throws InvalidProtocolBufferException {
User.Builder builder = User.newBuilder();
builder.setAge(25);
builder.setName("icefoxs");
User user = builder.build();
System.out.println("before :" + user.toString());
System.out.println("===========Person Byte==========");
for (byte b : user.toByteArray()) {
System.out.print(b);
}
System.out.println("==========byteLength" + user.toByteArray().length);
System.out.println();
System.out.println(user.toByteString().toString());
System.out.println("================================");
byte[] byteArray = user.toByteArray();
System.out.println(byteArray.length);
User p2 = User.parseFrom(byteArray);
System.out.println("after :" + p2.toString());
}
}



