背景
尽管go支持交叉编译,但是在特定情况下,例如CGO模式下不支持交叉编译,可能需要在服务器或者是其他的系统环境上编译并运行我们写的程序,但是每次都要在服务器之间进行拷贝传输,非常麻烦。例如最近我在测试项目的时候,需要在服务器上编译运行我的代码,所以每次在本地编写完代码后,都需要手动scp
到目标服务器上,如果在服务器上运行报错,修复后还要重复同样的步骤,非常耗时而且不方便。
goland remote connect
接下来介绍一下使用goland的远程连接模式,那叫一个丝滑。
首先打开goland设置,找到Deployment,也可以直接搜索Deployment,点击➕,选择SFTP,输入服务名称并创建。
接下来配置SSH,输入目标服务器的地址、用户名和密码,点击Test Connection
可以测试连接,测试成功后连接就创建成功了,点击OK
。
配置我们服务器代码的位置,点击Mappings
,Local path是我们本地的代码路径,Deployment path是我们远程服务器的代码路径。
点击OK
所有配置就结束了。接下来让我们测试一下是否生效,本地创建了一个test.go文件,打印“hello world!”。点击Goland菜单栏中的Tools > Deployment,我们可以看到提示我们是否上传到我们配置好的服务器,当配置了多个服务器时,点击Upload to...
可以选择我们想要的服务器,在这里我们点击 Upload to test
,上传成功后会在左下角提示成功,从服务器上Download也是相同的操作。
然后我们到目标服务器看到在我们配置的目录下出现了test.go文件,运行后输出 “hello world!”,到此就大功告成了。之后我们在本地修改代码后,只需要点击Upload就可以同步到服务器上。