个人房产查询系统网站官网,做网站怎么盈利,网站流程设计,如何创建公司GOROOT的原理
go sdk与java jdk类似#xff0c;是go的编译工具链的集合。
在windows上#xff0c;我们通过在系统环境变量中添加GOROOT并设置为go sdk地址#xff0c;使得命令行可以访问到go sdk并执行go test、build等命令#xff0c;这样设置的变量是全局生效的#x…GOROOT的原理
go sdk与java jdk类似是go的编译工具链的集合。
在windows上我们通过在系统环境变量中添加GOROOT并设置为go sdk地址使得命令行可以访问到go sdk并执行go test、build等命令这样设置的变量是全局生效的
而在linux中我们并没有修改系统环境变量而是安装go后将go sdk地址写为GOROOT写在/home/user_name/.bashrc中并export PATH$PATH;$GOROOT/bin来调用go sdk这样设置的变量只在bash中生效重点来了
GOPATH已经被弃用影响不是很大。
问题在哪里
所以当Goland调用make时GOROOT实际上并没有定义而为了弥补这一点Goland非常“聪明”地将ide保管的GOROOT、GOPATH加入环境变量发送给make从而使它能调用go sdk。
这样有什么问题呢这一套在windows上啥问题也没有甚至可以支持自定义go sdk版本但是聪明的读者可能已经发现这个GOROOT和make看到的GOROOT根本不是一个东西
我们通过在makefile开头打印GOROOT变量来看一下Goland干了什么好事
好家伙他直接把//wslUbuntu给发了过去这不是三体人和地球人聊科学吗make直接看不懂了直接罢工。
解决办法有但是极为丑陋
只说结论的话确实是有的。 步骤
右上角齿轮-Go设置-GOROOT-无SDK右上角三个点-编辑配置-取消包含系统变量-添加用户环境变量GOROOT“/usr/local/go/bin/”在makefile中添加GOLOCAL$(GOROOT)/go使用GOLOCAL进行GO操作
代价
正常wsl开发需要设置Go sdk这下又要重新设置正常终端开发需要用这个makefile的话又要把makefile改回去
官方赶紧把wsl优化端出来