proto maven 编译 组件

proto maven 编译 组件

在使用 grpc + protobuf 作为 rpc 的时候我们对 protobuf 要做编译生成对应的语言的代码,这里以 java 为例,我们回生成 java 代码使用 protoc 命令 protoc --java_out=**/**/ **/**/**.proto 每次都要执行并且把生成的代码 copy 到 main src 中,这样十分到繁琐浪费时间,这时候可以使用 maven 插件,可以很好的帮我们把 idl 生成 java 语言(⚠️:proto 文件必须在 java 同级的 proto 中)

xml 复制代码
<build>
    <extensions>
        <extension>
            <groupId>kr.motd.maven</groupId>
            <artifactId>os-maven-plugin</artifactId>
            <version>1.7.1</version>
        </extension>
    </extensions>
    <plugins>
        <plugin>
            <groupId>org.xolstice.maven.plugins</groupId>
            <artifactId>protobuf-maven-plugin</artifactId>
            <version>0.6.1</version>
            <configuration>
                <protocArtifact>com.google.protobuf:protoc:3.25.5:exe:${os.detected.classifier}</protocArtifact>
                <pluginId>grpc-java</pluginId>
                <pluginArtifact>io.grpc:protoc-gen-grpc-java:1.68.1:exe:${os.detected.classifier}</pluginArtifact>
                <outputDirectory>
                    ${basedir}/src/main/java
                </outputDirectory>
                <clearOutputDirectory>false</clearOutputDirectory>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>compile</goal>
                        <goal>compile-custom</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
相关推荐
贾斯汀玛尔斯1 天前
每天学一个算法--LSM-Tree(Log-Structured Merge Tree)
java·算法·lsm-tree
bitt TRES1 天前
springboot与springcloud对应版本
java·spring boot·spring cloud
Y001112361 天前
JavaWeb-end
java·servlet·web
bzmK1DTbd1 天前
Git版本控制:Java项目中的分支管理与合并策略
java·开发语言·git
JWASX1 天前
【RocketMQ 生产者和消费者】- 事务源码分析(1)
java·rocketmq·java-rocketmq
AlunYegeer1 天前
JAVA,以后端的视角理解前端。在全栈的路上迈出第一步。
java·开发语言·前端
DFT计算杂谈1 天前
自动化脚本一键绘制三元化合物相图
java·运维·服务器·开发语言·前端·python·自动化
2301_771717211 天前
Spring Boot 自动配置核心注解
java·spring boot·mybatis
小Y._1 天前
面试被问synchronized锁升级,这5个问题答不上来直接挂!
java
姚青&1 天前
测试技术体系
java·python