README.md 3.7 KB

Golang 公共项目

Golang开发环境安装

安装

此处 下载安装

环境变量配置

Windows

在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:

GOROOT=C:\go
GOPATH=%USERPROFILE%\go

PATH环境变量末尾添加 %GOROOT%\bin

MAC OS X

cd

sudo vi .bash_profile

修改以下项目

export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH="${GOROOT}/bin:${PATH}"

source .bash_profile

更新配置

与Java、Python、NodeJS、PHP等均不同,只是开发环境需要安装用于代码编译,生产环境直接运行项目编译好的可执行文件即可,无需安装任何类似JRE、Python、v8、PHP的虚拟机或运行时环境!

执行以下操作前请理解并确认:

  1. GOPATH 环境变量已配置,例如配置到用户目录下的go目录
  2. GOPATH 目录是用于存放golang项目和其相关依赖的目录,所有golang项目代码都应该位于GOPATH目录中的src子目录下的包括代码托管地址、组织名、项目名在内的多级子目录下

获取项目

获取

go get -v -insecure -d git.haoqitour.com/haoqi/go-common

参数:-v 显示详情,-insecure 非https版本仓库路径,-d 仅获取,不编译安装到GOPATH

可能会卡住或者报错,不用管,只要项目本身源代码文件获取下来了即可,文件保存位置即在上述GOPATH目录中的子目录里

完成上述操作之后,以后日常开发都可以正常使用git命令来获取和提交此项目代码

建立软连接

建立软连接的目的仅仅是为了方便找而已!

使用GoLand等开发工具时,仍然打开GOPATH里面的项目目录,而不是打开软连接位置的!

Windows

Power Shell 或 Windows CMD (需要用管理员身份运行):

注意,Windows Power Shell打开后首先输入cmd进入Windows CMD,下同不再累述

mklink /D %USERPROFILE%\Documents\project\haoqitour\go-common %GOPATH%\src\git.haoqitour.com\haoqi\go-common

MAC OS X

sudo ln -s $GOPATH/src/git.haoqitour.com/haoqi/go-common/ ~/Documents/project/haoqitour/go-common

相关依赖

Golang官方包

Golang运行时 >= 1.10.3

其他常用golang官方包,因为golang.org被墙,所以用以下步骤获取:

Windows

git clone https://github.com/golang/net.git %GOPATH%\src\golang.org\x\net
git clone https://github.com/golang/text.git %GOPATH%\src\golang.org\x\text
git clone https://github.com/golang/tools.git %GOPATH%\src\golang.org\x\tools
git clone https://github.com/golang/sys.git %GOPATH%\src\golang.org\x\sys
git clone https://github.com/golang/crypto.git %GOPATH%\src\golang.org\x\crypto
cd %GOPATH%\src
go install golang.org\x\text

MAC OS X

git clone https://github.com/golang/net.git $GOPATH/src/golang.org/x/net \
&& git clone https://github.com/golang/text.git $GOPATH/src/golang.org/x/text \
&& git clone https://github.com/golang/tools.git $GOPATH/src/golang.org/x/tools \
&& git clone https://github.com/golang/sys.git $GOPATH/src/golang.org/x/sys \
&& git clone https://github.com/golang/crypto.git $GOPATH/src/golang.org/x/crypto \
&& cd $GOPATH/src/ \
&& go install golang.org/x/text

第三方包

如果有未下载的依赖包,进入项目目录,执行以下命令即可

go get -v

本项目主要依赖包如下

结构化日志logrus

结构化日志logrus输出到graylog

配置文件读取viper

数据库ORM框架xorm

默认的golang依赖库是全局的,如果希望各个项目各自管理自己的依赖,可以使用 godep