idea安装protobuf插件并生成对应的java文件

搜了很多,然并卵。互相copy居多,试错好几次。

直奔主题,springboot项目。

在idea增加插件。

在pom增加依赖:

<!--protobuf相关-->
        <dependency>
            <groupId>com.google.protobuf</groupId>
            <artifactId>protobuf-java</artifactId>
            <version>3.5.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.google.protobuf/protobuf-java-util -->
        <dependency>
            <groupId>com.google.protobuf</groupId>
            <artifactId>protobuf-java-util</artifactId>
            <version>3.5.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/io.grpc/grpc-all -->
        <dependency>
            <groupId>io.grpc</groupId>
            <artifactId>grpc-all</artifactId>
            <version>1.11.0</version>
        </dependency>
        <!--protobuf相关end-->

  然后在build里加入插件

 <build>

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

        <plugins>        
            <plugin>
                <groupId>org.xolstice.maven.plugins</groupId>
                <artifactId>protobuf-maven-plugin</artifactId>
                <version>0.5.0</version>
                <configuration>
                    <protocArtifact>
                        com.google.protobuf:protoc:3.1.0:exe:${os.detected.classifier}
                    </protocArtifact>
                    <pluginId>grpc-java</pluginId>
                    <pluginArtifact>
                        io.grpc:protoc-gen-grpc-java:1.11.0:exe:${os.detected.classifier}
                    </pluginArtifact>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>compile</goal>
                            <goal>compile-custom</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

  然后在右侧 Maven Projects里就能看到安装的插件了

 装插件导入时,会在控制台看到远程下载一些包。可能会比较慢。我下载了近10分钟才下载到。

因为配置中并没有指明源文件以及输出文件的路径。此时直接执行protobuf:compile,因为没有protobuf文件,看控制台会提示在项目的src/main/proto下找不到文件。

那么此时就可以在该文件路径下创建protobuf文件或者拷贝过来。

有几个文件是用到impoer关键词的。例如:

 在文件头部更改要输出的包名。然后在idea右边Pligins选择 protobuf:compile运行即可。在target就可以看到生成的对应java文件

 先解决能用的问题。剩下的有空再看。

原文地址:https://www.cnblogs.com/fuguang/p/14101762.html