登录
首页 >  Golang >  Go问答

在离线 Linux 设备上使用 Golang 进行编译

来源:stackoverflow

时间:2024-03-05 22:45:26 347浏览 收藏

有志者,事竟成!如果你在学习Golang,那么本文《在离线 Linux 设备上使用 Golang 进行编译》,就很适合你!文章讲解的知识点主要包括,若是你对本文感兴趣,或者是想搞懂其中某个知识点,就请你继续往下看吧~

问题内容

由于公司政策,我们有一个 CI/CD 服务器未连接到 Internet。

我想在此服务器中运行单元测试。

我可以将 WinScp 文件添加到其中。 为了让它工作,我想我将从我的源 Windows 机器上进行编译的所有文件通过 FTP 传输,本质上是复制 GOPATH 目录中的所有文件。

但我仍然收到错误,例如我实际上有这个文件 /export/home/teamcity/go/src/github.com/jinzhu/[电子邮件受保护]

Gopath 集 [17:40:40][步骤 1/1] GOPATH="/export/home/teamcity/go"

但是 CI/CD 构建会出现此错误

[步骤 1/1] 转到:github.com/jinzhu/[电子邮件受保护]:git fetch -f https://github.com/jinzhu/copier refs/heads/:refs/heads/ refs/tags/:refs/tags/ 在 /export/home/teamcity/go/pkg/mod/cache/vcs/556feec929544a421f03ed1922f1d1bfffe10a3eaaf694889bbdbe940ff02899 中:退出状态 128: [17:40:41] [步骤1/1]致命:无法访问'https://github.com/jinzhu/copier/':无法解析主机:github.com;名称或服务未知

有人有在没有连接互联网的服务器上编译Golang代码的经验吗?


解决方案


你应该看看go modules的官方文档来了解它是如何工作的。

在您的情况下,只需先下载所有依赖项:

go mod download

然后将所有依赖项复制到您的项目中:

go mod vendor

之后,将您的代码发送给该供应商。它包括在您的服务器上构建所需的所有包。

go build -mod vendor

本篇关于《在离线 Linux 设备上使用 Golang 进行编译》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>