1,安装maven
a.下载apache-maven-3.2.5,链接:http://mirrors.hust.edu.cn/apache//maven/maven-3/3.2.5/binaries/
b.解压到指定目录:(我使用的目录为)/Users/zhoufei/Documents/Tools/apache-maven-3.2.5
c.打开终端,配置环境变量:
vi ~/.bash_profile

MAVEN_HOME=/Users/zhoufei/Documents/Tools/apache-maven-3.2.5 //maven解压目录
export PATH=$PATH:$MAVEN_HOME/bin
export JAVA_HOME=/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home //Jave环境位置
注意:1.6.0.jdk 为你当前系统安装的版本号

使编辑生效: source ~/.bash_profile

d.检查是否安装成功
mvn -v

2,下载probuf源码和编译器
1.下载protobuf-2.5.0,链接:http://pan.baidu.com/s/1pJlZubT
2.安装
使用tar -zxf protobuf-2.5.0.tar.gz命令解压后得到是 protobuf-2.5.0的源码,
cd protobuf-2.5.0 进入目录

假如 你希望编译成功后输出的目录 为 /Users/zhoufei/Documents/Tools/protobuf/ 则输入如下两条命令:
./configure --prefix=/Users/zhoufei/Documents/Tools/protobuf/
make && make install
编译成功后将export PATH= /Users/zhoufei/Documents/Tools/protobuf/bin:$PATH加入到环境变量中
最后输入 protoc --version命令,如显示libprotoc 2.5.0则安装成功

3, 实例测试
一切准备就绪,我们来测试下。
进入目录下:/Users/zhoufei/Documents/Tools/ProtobufFile
vi person.proto
就按ProtocolBuffer的语法规则简单建立一个.proto的文件
package csdnblog;
message PBUser {
required string userId = 1;
optional string nick = 2;
optional string avatar = 3;
}
创建完毕后,我们来编译这个person.proto文件。命令如下:
protoc --plugin=/usr/local/bin/protoc person.proto --java_out=./
protoc会自动在/usr/local/bin/目录下寻找名为”protoc”的插件,并使用该插件编译.proto文件,最终生成文件:
Person.java
这个步骤通过后,说明ProtocoBuffer可以正常工作了。

参考文章:
protobuf-2.5.0.tar.gz的下载与安装 链接:http://blog.csdn.net/huguoping830623/article/details/45482725
Protobuf详解 链接:http://mikewang.blog.51cto.com/3826268/1432136/

Protobuf java版本安装步骤的更多相关文章

  1. CRT7.3.1版本安装步骤

    工具: Setup.exe安装程序 keygen.exe注册机 zwt.nfo 查看电脑信息(主要看自己电脑是x86还x64版本) 安装步骤(所有程序尽量以管理员身份启动) 1.安装SecureCRT ...

  2. 海康SDK JAVA版本调用步骤及问题介绍

    一.前言 本文为海康SDK JAVA版本Demo的介绍,采用Eclipse运行,以及一些问题记录. 海康SDK版本:SDK_Win32 Eclipse版本:Mars2.0 JDK版本:1.8.0_15 ...

  3. java 版本安装

    系统:Ubuntu 10.04 JDK:jdk-6u20-linux-i586.bin 当然,我已经在sun的官方网站上下载好了必要的jdk,由于是在linux下安装,跟平时习惯的windows有所不 ...

  4. MySQL8.0.x 版本安装步骤傻瓜式教程【官方版】

    MySQL8.0.x 安装 一.下载 MySQL官网下载链接:https://downloads.mysql.com/archives/community/ 选择版本后下载zip文件 博主选择的是8. ...

  5. Oracle12C版本安装步骤

    一.下载路径 http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html file1,file ...

  6. Eclipse Neon Java版本安装Java EE插件

    Help→Install New Software 地址:Neon - http://download.eclipse.org/releases/neon/201703231000 选择  Web,X ...

  7. Linux详细安装步骤

    Linux详细安装步骤(CentOS_6.7_64位) 1.先安装好VMware10软件 2.验证VM是否安装成功: (有些机器在安装vmware的时候会出现一个错误:virtual XT,这需要重启 ...

  8. MYSQL-LINUX 安装步骤

    https://www.cnblogs.com/dengshihuang/p/8029092.html   5.7版本安装步骤 1.官网下载mysql二进制文件,匹配自己的linux版本: wget ...

  9. Java开发工具安装步骤内容如下

    Java开发工具安装步骤内容如下 安装 开发工具 STS 链接下载网址 eclipse 链接下载网址 JDK安装 jdk链接下载地址 Marven环境 marven链接下载地址 Tomcat tomc ...

随机推荐

  1. 笔记:I/O流-文件操作

    Java库中使用 Path 和 Files 类封装了在用户机器上处理文件系统所需要的所有功能,可以使用Paths来获取一个具体的Path对象,来表示具体的路径. 路径 Path表示的是一个目录名序列, ...

  2. 前端的UI设计与交互之导航篇

    在广义上,任何告知用户他在哪里,他能去什么地方以及如何到达那里的方式,都可以称之为导航.当设计者使用导航或者自定义一些导航结构时,请注意:尽可能提供标识.上下文线索,避免用户迷路:保持导航样式和行为一 ...

  3. MYSQL数据库学习六 索引的操作

    6.1 索引 由于数据存储在数据库表中,所以索引是创建在数据库表对象上的,由表中的一个或多个字段生成的键组成,这些键存储在数据结构(B-树或哈希表)中,通过索引可以快速有效地查找与键值相关联的字段.根 ...

  4. 【Python】 docker-py 用Python调用Docker接口

    [docker-py] 官方文档:[https://docker-py.readthedocs.io/en/stable/images.html] 众所周知,Docker向外界提供了一个API来管理其 ...

  5. 网络通信 --> ZMQ安装和使用

    ZMQ安装和使用 ZMQ 并不像是一个传统意义上的消息队列服务器,事实上,它也根本不是一个服务器,它更像是一个底层的网络通讯库,在 Socket API 之上做了一层封装,将网络通讯.进程通讯和线程通 ...

  6. Java多线程:Automic包原理

    http://blog.csdn.net/zhangerqing/article/details/43057799 https://www.cnblogs.com/dengzz/p/5688021.h ...

  7. mysql的备份脚本

    mysql的备份脚本 脚本如下 #!/bin/sh # mysql_backup.sh: backup mysql databases and keep newest 5 days backup. # ...

  8. java 语法分析器 括号匹配

    package test; import java.util.*;public class Test {    public String text="fewe{f(sdd(f)a[j]sd ...

  9. Django—templates系统:模版语言

    常用语法 只需要记两种特殊符号: {{  }}和 {% %} 变量相关的用{{}},逻辑相关的用{%%}. 变量 {{ 变量名 }} 变量名由字母数字和下划线组成. 点(.)在模板语言中有特殊的含义, ...

  10. 说一说Java的Unsafe类

    最近在看Java并发包的源码,发现了神奇的Unsafe类,仔细研究了一下,在这里跟大家分享一下. Unsafe类是在sun.misc包下,不属于Java标准.但是很多Java的基础类库,包括一些被广泛 ...