【golang】为什么使用goland终端修改不了Go语言的配置环境?

问题

最近在做项目时,需要使用golang的交叉编译,在windows系统上打包一个可以在linux系统上运行的golang程序的二进制文件。

这就需要暂时修改一下golang的配置环境

shell 复制代码
set GOARCH = amd64
set GOOS = linux

但是修改的时候发现在goland终端输入这两条命令之后,虽然终端不会报错,但是go env查看之后,发现配置环境还是没有修改成功。

问题排查

然后使用windows系统中的cmd终端:

可以发现,使用cmd终端成功修改了

问题解决

经过查询之后,发现在goland终端修改不成功的原因是因为goland终端使用的是PowerShell,而使用cmd和使用PowerShell终端修改配置变量的语法命令是不一样的,所以在goland终端中修改配置变量没有生效。

解决:

cmd终端修改命令:

go 复制代码
set GOARCH = amd64
set GOOS = linux

PowerShell终端修改命令(也就是在goland中):

go 复制代码
$ENV:GOOS="linux"
$ENV:GOARCH="amd64"

问题解决。

相关推荐
恋恋西风2 小时前
C++ 理解 std::thread 在单核和多核上的行为差异
开发语言·c++
学长毕业设计2 小时前
基于SpringBoot的公益基金管理系统(源码+文档+讲解视频)
java·spring boot·后端
Brilliantwxx2 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
东小西2 小时前
【SAA实战】第 3 篇 · 工具调用全攻略:把业务能力交给 Agent 自己调度
java·后端·spring
东小西2 小时前
【SAA实战】第 4 篇 · Agent 短期记忆:saver 让 Agent 跨轮记得住(threadId 隔离)
java·后端·spring
BizzZ_2 小时前
C++(22)——类型转换和IO流
开发语言·c++
阿kun要赚马内2 小时前
MySQL 索引基础
后端·mysql
小范同学_2 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
码事漫谈3 小时前
我啥都能做,却不知道做什么了
后端
geovindu3 小时前
CSharp: 万年历
开发语言·后端·c#·.net