go - Vscode (Mac OS) 在运行任务时有不同的 $PATH
问题描述
我正在尝试编写一个自动任务来帮助我构建 go 插件。任务看起来像这样
{
"label": "compile wc.go",
"type": "shell",
"command": "go",
"args": [
"build",
"-buildmode=plugin",
"-gcflags='all=-N -l'",
"../mrapps/wc.go"
],
"options": {
"cwd": "${workspaceFolder}/src/main",
}
}
当我运行它时,终端显示以下错误:
> Executing task: go build -buildmode=plugin -gcflags='all=-N -l' ../mrapps/wc.go <
/bin/bash: go: command not found
The terminal process "/bin/bash '-c', 'go build -buildmode=plugin -gcflags='all=-N -l' ../mrapps/wc.go'" failed to launch (exit code: 127).
当我运行 go env 命令时,它可以在集成终端上完美运行
(base) XIEs-MacBook-Pro:6.824 j$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
...enter code here
我一直在寻找答案,但没有。
我尝试了另一个任务
{
"label": "test",
"type": "shell",
"command": "echo $PATH",
"options": {
"cwd": "${workspaceFolder}/src/main"
}
}
它打印了我的 PATH,这与我在 bash 或集成终端中得到的明显不同。
而且我还尝试按任务打开一个python解释器,它产生一个python 2.7,肯定不是默认的(由哪个python)。
解决方案
您可能应该设置以便导出Run as login shell
中的所有变量。bash_profile(rc)
AFAIK 这里是设置"terminal.integrated.shellArgs.osx": ["-l"]
。
推荐阅读
- javascript - Chartjs:悬停光标时需要帮助绘制垂直线
- c - 读跳数输入
- json - 无法将 JSON 格式的表导入 PostgreSQL
- javascript - 使用“returnObject”道具时,Vuetify Autocomplete 不返回字符串而不是对象
- python-3.x - 如何在 Dash python 中创建可拖动模式?
- android - Android中View的LinearLayout问题
- laravel - 如何在 Laravel Vapor 平台上设置守护进程?
- python - Maya 的 ShrinkWrap 变形器
- azure - 如何使用 Github Actions 将具有多个 Web 应用程序的 .NET Core 解决方案部署到 Azure
- java - 如何组合两个自定义对象的 CompletableFuture 列表并返回一个通量对象?