<properties> <os.maven.version>1.5.0.Final</os.maven.version> <protobuf.plugin.version>0.5.1</protobuf.plugin.version> <external.proto.version>3.1.0</external.proto.version> <java.version>1.8</java.version> </properties> <dependencies> <dependency> //3. 当编译proto 生成的代码时,需要加入这些依赖。 <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java</artifactId> <version>${external.proto.version}</version> </dependency> </dependencies> <build> <extensions> <extension> <groupId>kr.motd.maven</groupId> //1.为了有 ${os.detected.classifier} 这个变量 <artifactId>os-maven-plugin</artifactId> <version>${os.maven.version}</version> </extension> </extensions> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>${java.version}</source> <target>${java.version}</target> </configuration> </plugin> <plugin> // 2 这一段会根据proto 生成代码 <groupId>org.xolstice.maven.plugins</groupId> <artifactId>protobuf-maven-plugin</artifactId> <version>${protobuf.plugin.version}</version> <configuration> <protocArtifact>com.google.protobuf:protoc:${external.proto.version}:exe:${os.detected.classifier}</protocArtifact> <protoSourceRoot>${project.basedir}/src/main/proto</protoSourceRoot> <clearOutputDirectory>false</clearOutputDirectory> <!--<checkStaleness>true</checkStaleness>--> </configuration> <executions> <execution> <!--<phase>generate-resources</phase>--> <goals> <goal>compile</goal> </goals> </execution> </executions> </plugin> </plugins> </build> |