主要顺序就是:1. 本地安装protoc,添加到path > 2. idea安装protocBuf插件 > 3. 工程配置maven插件自动编译proto文件
1. mac下安装protoccd /usr/local/lib
mkdir protobuf
cd protobuf
wget https://github.com/protocolbuffers/protobuf/releases/download/v3.15.6/protobuf-cpp-3.15.6.tar.gz
tar -xzvf protobuf-cpp-3.15.6.tar.gz
cd protobuf-3.15.6
./configure --prefix=/usr/local/protobuf 这里我们安装在/usr/local下了
make && make install 注意用root编译
看到没有报错就说明编译成功了。
然后添加到环境变量中
sudo vim /etc/profile
添加两行
export PROTOBUF=/usr/local/protobuf
export PATH=$PATH:$PROTOBUF/bin
然后应用配置
source /etc/profile
看下是否设置成功
protoc --version
2. idea安装protoc插件这里其实随便选一个就可以,主要是为了idea下查看和编辑方便。
我这边还是用了官方的这个。
3. maven工程下使用插件自动编译proto文件我这边用的是:
org.xolstice.maven.plugins:protobuf-maven-plugin
好处是这个插件已经封装的很好了,只需要少量配置即可。
官方文档:
Maven Protocol Buffers Plugin – Usage
下面给出pom配置:
dependency配置
com.google.protobuf protobuf-java1.7.0
build配置
这边protocExecutable 其实可以不用配,如果protoc已经加到path中的话,否则需要配protoc的全路径。
descriptoroutput这边我是设置直接输出到classes目录,这样打包的时候可以打进去,不设置也没关系。
其他配置的话,其实最主要的是配置proto文件的路径,这里因为我文件放在默认的src/main/proto文件夹,所以没有配置,否则增加一个">
org.xolstice.maven.plugins protobuf-maven-plugin0.6.1 protoc ${project.build.directory}/classes src/main/proto compile
配置完以后,直接mvn clean install,最终能在target/classes目录中找到你的proto文件编译成的class文件就大功告成了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)