一、go安装

        1、建议去go语言中文网下载,网址:https://studygolang.com/dl,下图是下载页面及包介绍:

如何运行别人的go语言项目 怎么运行go项目_如何运行别人的go语言项目

        2、因为我是windows系统,所以选择Windows版安装。其他系统按照需要下载相应的版本即可。下载安装包后,一直选择 next即可。安装过程中,我选择安装目录为:D:\Program Files\Go  。

如何运行别人的go语言项目 怎么运行go项目_go_02

go version

如何运行别人的go语言项目 怎么运行go项目_github_03

        4、在任意盘里新建文件夹GoWorks,我选择在G盘创建 GoWorks 文件夹,并在该文件夹下再新建三个文件夹: bin、src、pkg 。

如何运行别人的go语言项目 怎么运行go项目_go_04

        5、如下图添加环境变量:GOPATH=G:\GoWorks  (即第4步创建的文件夹);

                                                      GOROOT=D:\Praogram Files\Go (即第2步 go 的安装目录)。

如何运行别人的go语言项目 怎么运行go项目_go_05

二、安装goland

        官网下载链接:https://www.jetbrains.com/go/  。

三、相关环境配置

        1、设置GOPROXY

        由于国内网络有防火墙的存在,导致有些Go语言的第三方包无法直接通过 go get 命令获取。GOPROXY 是Go语言官方提供的一种通过中间代理商来为用户提供包下载服务的方式。要使用 GOPROXY 只需要设置环境变量 GOPROXY 即可。

        目前公开的代理服务器的地址有:

        goproxy.io;

        goproxy.cn:(推荐)由国内的七牛云提供,以利于中国开发者更好使用go module。

如何运行别人的go语言项目 怎么运行go项目_goland_06

        2、配置 Goland IDE        

        在 GoLand 2019.1中使用 go module 需要进行两个设置:

        ①Settings-> Go -> Go Modules (vgo),勾选 Enable Go Modules (vgo) integration 以启用 Go Modules,并在 Proxy 输入框中输入 :

https://goproxy.cn,direct

        如图所示:

如何运行别人的go语言项目 怎么运行go项目_Go_07

        ②Settings-> Go -> GOPATH,勾选上 Index entire GOPATH 以索引整个 GOPATH,不然无法导入包。如图所示:

如何运行别人的go语言项目 怎么运行go项目_go_08

四、Demo

        1、新建项目

如何运行别人的go语言项目 怎么运行go项目_Go_09

如何运行别人的go语言项目 怎么运行go项目_如何运行别人的go语言项目_10

        2、编写代码。

        创建 main.go 文件:

package main


import (
   "github.com/julienschmidt/httprouter"
   "net/http"
)


func RegisterHandlers() *httprouter.Router {
   router := httprouter.New()


   router.GET("/user", GetUser)




   return router
}


func main() {
   r := RegisterHandlers()
   http.ListenAndServe(":8000", r)
}

        创建 handlers.go文件:

package main


import (
   "io"
   "net/http"
   "github.com/julienschmidt/httprouter"
)


func GetUser(w http.ResponseWriter, r *http.Request, p httprouter.Params) {
   io.WriteString(w, "Get User Handler")
}

        目前项目结构如下:

如何运行别人的go语言项目 怎么运行go项目_go_11

        3、到目前为止,这还不是个go module,因为还没有go.mod文件。

        我们进入到项目根目录下,输入 go mod init 命令。此命令会在当前目录中初始化和创建一个新的 go.mod 文件,当然你也可以手动创建一个 go.mod 文件,在文件中包含一些 module 声明,这样比较麻烦。使用 go mod init 命令可以帮助我们自动创建。go mod init 同时生成 go.sum 文件,go.sum是一个模块版本内容的校验值,用来验证当前缓存的模块。go.sum包含了直接依赖和间接依赖的包的信息,比 go.mod 要多一些。

        由于我们在代码中引入了第三方依赖    github.com/julienschmidt/httprouter ,需要把该依赖下载到本地,我们再执行 : go mod tidy 。

        默认情况下,go 不会移除 go.mod 文件中的无用依赖。所以当你的依赖中有些使用不到了,可以使用go mod tidy命令来清除它。

        用法: go mod tidy [-v]     它会添加缺失的模块以及移除不需要的模块。添加参数 -v,例如 go mod tidy -v 可以将执行的信息,即移除的模块打印到标准输出。      

如何运行别人的go语言项目 怎么运行go项目_Go_12

        4、当编写完代码后,我们想启动项目来调试。

        ①在 Goland 的右上方找到“Add Configuration”并单击。

如何运行别人的go语言项目 怎么运行go项目_Go_13

        ②在弹出的窗口中点击“+”,并在下拉菜单中选择“Go Build”。

如何运行别人的go语言项目 怎么运行go项目_github_14

        ③点击“Go Build”之后,在窗口中填写对应的信息,如下所示。

如何运行别人的go语言项目 怎么运行go项目_goland_15

        上图中有以下几点需要注意:

        Name:为本条配置信息的名称,可以自定义,也可以使用系统默认的值;

        Run kind:这里需要设置为“Directory”;

        Directory:用来设置 main 包所在的目录,不能为空;

        Output directory:用来设置编译后生成的可执行文件的存放目录,可以为空,为空时默认不生成可执行文件;

        Working directory:用来设置程序的运行目录,可以与“Directory”的设置相同,但是不能为空。

        PS:除了上面提到的几点外,其余的配置项使用系统的默认值即可,无需修改。

        5、然后,我们就可以点击 Goland 右上方的绿色三角来运行上面编写的程序了。

如何运行别人的go语言项目 怎么运行go项目_go_16

        6、项目启动后,我们在浏览器输入:    http://localhost:8000/user   就可以看到返回的字符串了。

如何运行别人的go语言项目 怎么运行go项目_如何运行别人的go语言项目_17

参考文档:

        https://www.jb51.net/article/198515.htm


        http://www.seaxiang.com/blog/dgme


        https://studygolang.com/articles/31753

        http://c.biancheng.net/view/6170.html

        http://www.45fan.com/article.php?aid=1u9TsjcXfu4Gl0Yc