Maven工程处理Protobuf

一、引言

Java 开发中特别是进程间通讯,往往会用到google的protobuf作为数据格式,但是处理protobuf的时候需要编解码,这里在maven工程集成了protobuf插件方便开发使用。

二、方法

1. 在pom文件中配置相应的jar包

<dependency>
    <groupId>com.google.protobuf</groupId>
    <artifactId>protobuf-java</artifactId>
    <version>3.2.0</version>
</dependency>

2. 在build中添加配置

<build>
    <defaultGoal>package</defaultGoal>
    <extensions>
        <extension>
            <groupId>kr.motd.maven</groupId>
            <artifactId>os-maven-plugin</artifactId>
            <version>1.5.0.Final</version>
        </extension>
    </extensions>

    <plugins>
        <!-- protobuf 编译组件 -->
        <plugin>
            <groupId>org.xolstice.maven.plugins</groupId>
            <artifactId>protobuf-maven-plugin</artifactId>
            <version>0.5.1</version>
            <extensions>true</extensions>
            <configuration>
                <protoSourceRoot>${project.basedir}/src/main/proto</protoSourceRoot>
                <protocArtifact>com.google.protobuf:protoc:3.2.0:exe:${os.detected.classifier}</protocArtifact>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>compile</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

        <!-- 编译jar包的jdk版本 -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <source>${java.version}</source>
                <target>${java.version}</target>
            </configuration>
        </plugin>
 </plugins>
</build>

1. 注意proto的版本

2. 需要将需要编译的proto文件放入/src/main/proto目录下。如果没有则自行创建

三、编译

1. 命令: mvn protobuf:compile

2. IDEA开发工具

四、编译完成java文件位置

如下图

五、总结

通过此方式,可以通过maven编译不同版本的proto,不需要开发机器安装proto,  也不需要编译好java文件放到工程中。到此为止就可以在工程中自由引用编译protobuf了。

转载于:https://my.oschina.net/u/573325/blog/1617416

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值