首页 › 分类存档 › golang

goland远程调试

前言

之前写过一个goland本地调试,为什么可以本地调试还要远程调试呢?

首选声明一点,本地调试是首选,如果可以本地调试,那自然是本地调试最方便。

但是,本地环境和实际环境很多时候是不一样的,很难在本机搭建出与线上完全相同的环境,比如我们想调试数据库、调试rpc、调试服务注册发现,这些线上都是现成的,但在我们本机就很难复制,再比如线上的网络和我们本机的网络环境是不一样的,这些场景下本地调试均无法满足我们的需求,需要把我们的程序部署在线上环境,才能测试。

之前不知道远程调试,我都是改好了程序,push到git上,然后到线上的机器pull下来,编译,运行,看日志。。。一方面,每次改完程序想测试一下,很繁琐,另一方面,完整的开发完一个feature,产生了几十次commit。。。

好在,goland有远程调试功能!

有了远程调试,在goland写完代码,直接同步到远端机器,然后点小虫子按钮调试,然后设断点。。。嗯,就基本上跟本地调试一样方便了。

说明

在说具体配置方式之前说明几点:

1.配置过程不需要翻墙,配置过程中会从github下载一些东西,会很慢,但是可以!

2.本地的gopath和远端机器不需要一致,go版本也不需要一致,如果你本地和远端都有go环境,无需做任何调整!

总之就是,配置成本不高,很easy~
继续阅读 »

goland本地调试

配置

当我们第一次用goland打开一个工程时,右上角的运行还有调试按钮都是灰色的,就是点不了的。为什么点不了呢?

如果是你打开的是一个文件,goland可能会默认你想go run这个go文件,但是一个工程里有一大堆go文件,goland并不知道你是想运行其中某一个go文件,还是想把这一堆文件编译成一个二进制文件然后再运行,我们通常要做的事是后者。
这个时候,我们就要配置一下,告诉goland当我们点击运行或者调试的时候,是想做什么。配置就是点这个:

点开是下面这样的:
继续阅读 »

golang 交叉编译,跨平台

因为我的本地开发环境是os x 但服务器是linux,所以需要编译linux用的go程序,方法如下:

各平台的GOOS和GOARCH参考

继续阅读 »

go语言api网站

http://mikespook.com/learning-go/

Go linux 开发环境搭建+语法色

export GOROOT=/usr/local/go
export GOPATH=/home/myname/workspace/golang
export GOBIN=$GOPATH/bin/
export NODE_JS_PATH=/home/myname/usr/local/node
export PATH=$PATH:$GOROOT/bin:$GOBIN:$NODE_JS_PATH/bin
export LANG=zh_CN.utf8
继续阅读 »

用golang启动一个daemon

用golang启动一个daemon
继续阅读 »