ubuntu安装go环境
问题:执行go命令,找不到命令,服务器没有go环境
//go项目包 直接翻译成机器码执行的,打断点调试 得要go环境
解决方法:
1、
#wget 后面的下载链接请去golang官网(https://golang.google.cn/dl/)获取对应go版本
sudo wget https://golang.google.cn/dl/go1.18.5.linux-amd64.tar.gz
# 解压文件
sudo tar xfz go1.18.5.linux-amd64.tar.gz -C /usr/local
2、
sudo vim /etc/profile
export GOROOT=/usr/local/go
export GOPATH=$HOME/gowork
export GOBIN=$GOPATH/bin
export PATH=$GOPATH:$GOBIN:$GOROOT/bin:$PATH
3、
sudo vim /etc/profile
4、
go env
5、如果还不行,重启下电脑
参考链接:
go命令
go build 打包
go build -o 文件名 main.go //要求在main.go目录下
mv 文件名 /opt/audit/backend //打包好替换环境下的包 并重启项目
go env 查看go环境
在上述安装go环境最后,使用了该命令
go run 编译可执行文件
运行go build
生成可执行文件
go run main.go
go get 获取远程
$ go get github.com/davyxu/cellnet
go version 查看版本
go mod
go mod tidy
go mod download
go mod init 项目名 //初始化项目的go.mod
参考链接:
Go 学习笔记(37)— 标准命令行工具(go build 跨平台编译、交叉编译、go clean、go run、go fmt、go install、go get、go vet)-CSDN博客
go build命令详解 | 我的技术分享 (lsdcloud.com)
自定义模块调用
问题:多个项目,里面有公共模块,将公共模块剥离出来,做成依赖,供其他业务调用
新建一个工作目录mywork,在下面新建两个目录,testa和testb目录,再分别在其下面新建两个go文件:testa.go和testb.go,现在的目的是testa调用testb中的函数,以下是cmd命令行操作:
REM:进入目录testb,生成一个模块文件go.mod,使用域名是为了让模块名称唯一:tony.com/testb
cd testb
go mod init tony.com/testb
REM:进入目录testa,生成一个模块文件go.mod,模块名称指向其所在位置,最后使用tidy整理模块即可
cd testa
go mod init tony.com/testa
go mod edit -replace tony.com/testb=../testb
go mod tidy
调用的时候,就是导入上面生成的模块名:import "tony.com/testb",然后使用testb调用里面的函数即可
demo:https://github.com/yvonne2345/demo/tree/master/mywork
参考链接: