GoLand连接远程Linux服务器进行Go项目开发的配置问题咨询
Go轻量项目远程部署最优方案指南
优先选择:本地编写+本地交叉编译上传(对应你尝试的第4种方案,完全符合轻量需求)
该方案无需服务器额外安装任何软件,也不用调试GoLand复杂的远程编译配置,不会出现本地依赖报错问题,步骤如下:
- 本地交叉编译配置:
Go原生支持跨平台编译,无需安装额外工具。打开GoLand的Run/Debug Configurations,新建Go Build配置:- 运行目标选择「本地」,运行种类选「文件」,指定你的
install.go路径 - 在「环境变量」栏添加参数:
GOOS=linux;GOARCH=amd64(服务器为arm架构时将amd64改为arm64即可) - 在「Go工具实参」栏填写
-o ./install,编译后会在项目根目录生成Linux平台可执行文件install
- 运行目标选择「本地」,运行种类选「文件」,指定你的
- 上传可执行文件:
你已经完成SFTP配置,直接在GoLand的Settings→Tools→Deployment中,将本地install文件的映射路径设置为服务器的/root/project/install,每次编译完成后右键选择上传即可,也可以直接用你常用的SFTP工具手动传输,操作成本极低。
其他尝试方案的修正方法
方案1/2(本地编辑同步到服务器编译)依赖报错解决
本地飘红报错是因为本地环境没有安装项目依赖包,如果不想处理本地依赖,可直接关闭GoLand的依赖报错提示:
- 打开
Settings→Editor→Inspections→Go,将依赖校验相关的规则告警级别从「Error」改为「Warning」即可,不会影响代码编辑和同步流程。
方案3(GoLand远程编译)输出路径不生效解决
你之前-o参数不生效是因为GoLand远程编译模式下会自动接管输出路径配置,无需手动加-o参数:
- 打开对应Run配置的「远程目标」选项卡,直接将「远程输出路径」填写为
/root/project/install即可,GoLand会自动将编译后的可执行文件上传到对应路径,不会生成多余临时文件。
极简备用方案(零GoLand配置)
如果不想花时间调试IDE配置,直接用命令行完成全流程即可,每次部署只需3步:
- 本地终端执行编译命令:
GOOS=linux GOARCH=amd64 go build -o install install.go - 用已配置的SFTP工具将
install文件传输到服务器/root/project/路径 - SSH终端执行授权命令:
chmod +x /root/project/install,之后直接运行即可。
内容的提问来源于stack exchange,提问作者Peter Hristov
相关产品推荐
相关产品推荐

