记一次Go环境搭建

记一次Go环境搭建

又到了令人作呕的环境搭建环节,突然知道跟着晓斌哥的项目需要Go语言,整个人还是非常震惊的

首先第一个问题就是IDEA中不能安装Go插件问题,这里居然还能出现问题,可能是IDEA的版本比较新吧,

没想到在网上也有和我同样的问题:

image-20200623170107077

安装这种方法改变之后,重启IDEA时出现了这个问题:

image-20200623170919496

最后的原因可能还是网络的原因,在MarketPlace那里刚开始没有加载出来,重启之后发现可以安装插件了

然后进行环境变量的配置

Hello,World:

package main
import "fmt"
func main() {
	fmt.Println("hello world")
}

image-20200623182339892

接下来进行一个web-demo

package main

import "github.com/astaxie/beego"

func main() {
    beego.Run()
}

这里的import和python中的导包操作基本一样,都是使用import关键字,但是导包时报错:

image-20200623182850065

网上说可能是访问github网络有问题,在hosts文件中进行了相应的配置,但是还是出错:

image-20200623182654799

最后的原因还是出在环境变量上,一开始在系统中配置了环境变量,但是程序读取不到,我也尝试了添加运行时环境变量,还是不行,在我无可奈何之际,突然想起了我以往的经验:重启!将IDEA重新启动之后,他自动引导我配置全局环境变量GOPATH,终于不暴红了:

image-20200624142443681

但是一个新的问题就是没有指明访问url:

image-20200624142537657

这里面可能涉及到路由的问题,所以这个问题先放在这里,接下来先跑起来一个mvc模式的小demo,能够访问数据库,这样就可以离实现分页更进一步了

按照demo引入了对应的项目之后,但是还是存在找不到包的情况:

image-20200625162221597

出现这个问题的时候还在傻傻的去网上找答案,其实第一件事是仔细看一下出错日志,问题应该是出在内部的包之间不能相互调用的问题,然后我就手动的把相应包放在GOPaTH这个路径下面,然后就可以引用成功了

所以经验就是创建项目的时候是需要放在默认的位置的,一般都是在$GOPATH/src下面创建一个项目名,因为这是Go的工作目录,否则可能出现包之间的依赖问题

还有一个工具自始至终都没有安装成功,就是bee,报出如下的错误:

image-20200626150603168

现在有点觉得,Go环境的搭建一点也不比当初跑起来JMQ管理端简单,这些问题都是没有见过的,然后我还要完成一个基于MVC+数据库的分页功能,孩子好难~

换了一个环境变量,重新配置了一下GOPATH,还是不行:

image-20200626152128726

还有一个需要注意的地方就是GOROOT和GOPATH是不能是相同文件夹的

目前的这些错误在网上的解决办法都很少,还不是像java一样普及,真的不知道怎么回事了,已经进入了盲猜阶段,我怀疑是版本问题,于是就把之前的Go卸载了,回退了一个版本,然后继续执行安装步骤,接下来就是耐心的等待,我去休息室喝了一杯咖啡,然后来了一泡带薪尿,回来之后,我操?!

image-20200626162314274

bee安装成功,成功迈进一大步!

这玩意是真的玄,一直到成功了还不知道为啥是这样的

但是之前的一个问题还是存在:

image-20200626162609091

就是url中找不到localhost的问题,router也是没有问题


周一继续更

早上还是在终端不能显示主机名,但是在浏览器直接访问localhost:8080却成功了:

image-20200628105511190

好了,目前的环境搭建已经基本完成了,其实Go语言在我们部门还是用的比较少,主要还是java,但是JMQ的管理端功能基本已经完善,而binlake是从其他地方接过来的项目,之前别人就是使用Go语言搞的,这里进行重构也不方便,而且需求也是相对比较多,接下来就是熟悉Go语法,熟悉一下这个管理端的功能

好了就这样,新的一周工作顺利!

Copyright: 采用 知识共享署名4.0 国际许可协议进行许可

Links: https://hadoo666.top/archives/记一次go环境搭建md