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>
相关推荐
HoneyMoose3 小时前
Jenkins Cloudflare 部署提示错误
java·servlet·jenkins
阿丰资源3 小时前
基于SpringBoot的物流信息管理系统设计与实现(附资料)
java·spring boot·后端
Predestination王瀞潞3 小时前
Java EE3-我独自整合(第四章:Spring bean标签的常见配置)
java·spring·java-ee
overmind3 小时前
oeasy Python 121[专业选修]列表_多维列表运算_列表相加_列表相乘
java·windows·python
资深数据库专家3 小时前
总账EBS 应用服务器1 的监控分析
java·网络·数据库
房开民3 小时前
可变参数模板
java·开发语言·算法
t***5444 小时前
如何在现代C++中更有效地应用这些模式
java·开发语言·c++
_深海凉_4 小时前
LeetCode热题100-最小栈
java·数据结构·leetcode
不知名的忻4 小时前
Morris遍历(力扣第99题)
java·算法·leetcode·morris遍历
daidaidaiyu4 小时前
一文学习入门 ThingsBoard 开源物联网平台
java·mqtt·spring