编译 proto 文件到指定语言的代码

由于 Protocol Buffers 3 的正式版还没有发布,在官网(https://developers.google.com/protocol-buffers/docs/downloads)目前只能下载到 2.6.1 的版本。

要下载 PB3 ,需要在 https://github.com/google/protobuf 的 release 中下载(https://github.com/google/protobuf/releases

目前这里的最新的版本是  Version 3.0.0-beta-2

以我的Mac为例, 我下载的是: protoc-3.0.0-beta-2-osx-x86_64.zip

这个解压缩后,内容如下:

这里的 protoc 就是我们 把 proto 编译成指定语言代码文件的工具。

如果你想自己编译这个工具,可以下载 https://github.com/google/protobuf 这个代码,编译方法参考: http://www.cnblogs.com/ghj1976/p/4564133.html 

 

时间: 2024-08-14 02:05:31

编译 proto 文件到指定语言的代码的相关文章

Maven项目中,编译proto文件成Java类

新建Maven项目 新建一个 Maven 项目: pom定义了最小的maven2元素,即:groupId,artifactId,version. groupId:项目或者组织的唯一标志,并且配置时生成的路径也是由此生成,如org.codehaus.mojo生成的相对路径为:/org/codehaus/mojo artifactId: 项目的通用名称 version:项目的版本 packaging: 打包的机制,如pom, jar, maven-plugin, ejb, war, ear, rar

QT小技巧—更好管理项目(增加预编译头文件,并且指定moc文件的生成位置)good

预编译加速编译 QT也可以像VS那样使用预编译头文件来加速编译器的编译速度.首先在.pro文件中加入: CONFIG += precompiled_header 然后定义需要预编译的头文件: PRECOMPILED_HEADER = pch.h 其中pch.h头文件即为自定义的预编译头文件. 指定临时文件生成目录,使项目文件夹更干净 QT默认情况下把所有的编译中间文件都生成到debug和release文件夹里.可以在.pro文件中加入: MOC_DIR = tmp/moc RCC_DIR = t

C++预编译头文件

以前只是学过C++中的预编译头文件,但一直没用过:既然今天又遇到了这个问题,所以还是决定写点总结 算是做个笔记吧! 在C++中之所以出现预编译的概念主要是因为在C++项目中导致整个程序的编译过程变得很缓慢的一个很重 要的原因就是C++头文件的存在,在每一个.cpp文件中都会包含许多.h的头文件,如果所包含的头文件过多或过大 就会导致.cpp文件过大而编译缓慢,但是事实上在许多.cpp中所包含的头文件都是重复出现的,即有很多头文件被 重复编译了许多次,这当然会导致项目整体的编译速度变慢. 为了解决

java文件操作之移动文件到指定的目录

原文:java文件操作之移动文件到指定的目录 代码下载地址:http://www.zuidaima.com/share/1550463261166592.htm java文件操作之移动文件到指定的目录,通过renameTo方法实现,而非copy后delete package com.zuidaima.util.file; import java.io.File; /** * 移动文件到指定的目录 * * @author www.zuidaima.com * */ public class Mov

Java千百问_08JDK详解(008)_通过代码如何编译java文件

点击进入_更多_Java千百问 1.通过代码如何编译java文件 编译器是一个命令行工具(jdk自带的编译工具javac,了解javac看这里:javac是什么),但也可以使用API来调用(一般的IDE都会使用这一组API来封装自己的编译功能).编译器遵循Java语言规范(The Java Language Specification,JLS)和Java虚拟机规范(The Java Virtual Machine Specification,JVMS). 在Java 6之后,提供了标准包来操作J

java_基础——在代码里编译.java文件

[本文介绍] 本文不是深入理解和使用java编译器,只是在代码里编译.java文件的helloWorld.这种技术还是蛮有意思的,说不定在将来的某些只能化项目会运用到!^_^ [编译最基础的流程] [java代码] 1 package com.zjm.www.test; 2 3 import java.io.IOException; 4 5 import javax.tools.JavaCompiler; 6 import javax.tools.JavaCompiler.Compilation

grpc proto文件生成java、.net实体类以及客户端代码

背景 工作中对接对方服务是GRPC,对方只提供了proto契约文件,需要自己生成对应的实体类以及客户端代码,故记录下操作流程. Java 代码生成 实体类: 通过protoc插件生成实体类 在 https://github.com/protocolbuffers/protobuf/releases 下载对应版本的protoc工具解压,我这边用的是3.1.0版本的 proto文件拷贝至protoc同目录,执行如下命令: protoc --java_out=./java/ hello.proto 对

linux下编译make文件报错“/bin/bash^M: 坏的解释器,使用grep快速定位代码位置

一.linux下编译make文件报错"/bin/bash^M: 坏的解释器 参考文章:http://blog.csdn.net/liuqiyao_01/article/details/41542101#comments 自己测试的结果: [1]使用windows 下的编辑工具 新建文件doc2unix.sh #!/usr/bin/env bash # test PID=$(ps -aef | grep nginx | grep -v grep | grep master |awk '{print

jdgui反编译+javac编译=无源文件修改代码

首先我们要知道,打包好的Java程序中都是编译好的字节码文件(*.class),这些class文件会在运行的时候被加载到JVM中. 若想替换掉某一个类,那么只需要将该类的源码重新编译然后再替换之前的class文件即可. 那么如果没有源代码怎么办呢?这个时候我们可以用反编译软件来反编译class文件,反编译软件中比较有名是jd-GUI,可以从官网上下载到最新的版本 我这里使用的是jd-gui-0.3.6.windows 下载完之后将class文件或者jar包拖到jd-gui的窗口中就可以看到反编译