问题标签 [go-modules]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
go - 如何使来自 golang.org 的模块在我的 go.mod 中显示为带有 semver 标签?
在我的go.mod
档案中。我想从 golang.org 更改有关模块的版本控制。
他们在版本之后有提交日期和哈希。
我正在使用 go mod,所以我go.mod
的工作区中有文件。我go.mod
的如下。
像这样。
golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4 -> golang.org/x/crypto v0.0.0
如何改变它?
我认为他们没有官方的主要版本控制。结果,我想简化我的go.mod
文件
go - 如何在代码提交和通过drone.io构建应用程序时在代码中提供所需的go模块?
我开发了一次性服务并将其部署在 GAE 上。在开发此应用程序时,我在我的工作机器中使用命令包含了所需的 go 模块-
我可以使用以下命令包含其他必需的 go 模块 -
它创建了一个带有消息的 go.mod 文件-
比,我执行下面的命令来下载供应商文件夹中所需的模块 -
现在,我想在我的功能分支中提交这个 go 代码,其中代码通过存储库中的 .drone.io 工具自动部署。但是,我的构建失败,只有错误:
在我的 .drone.yml 文件部分中,产生问题的是 -
我不知道如何解决这个问题?如果 go mod vendor 在这种情况下可以提供帮助,如何使用它以及我必须在哪个文件夹级别执行它?请解释所有要执行的步骤。
go - 无法在非本地类型模型上定义新方法。仪表
我想把我所有的模型放在一个共享Common
库中。
所以,我做了一个新的回购:gitlab.com/xxx/common
我在里面放了一个包:models
这是对象的定义:
现在,我想在外部项目中使用它,我这样做:
Go Modules 会下载它。
我像这样导入使用它:
但是Goland不会解决它,当我编译时,我得到:
为什么会发生,我能做些什么来解决它?
docker - 在 Docker 中找不到 Go mod 文件夹
我是一个非常新的模块,我正在尝试一个项目并更新它以使用它们,因为它们似乎是最终处理我的依赖项的好方法。但是,我在 Docker 中构建东西时遇到了问题。
我有一个带有一个main.go
和一个go.mod
文件的项目(它引用了私有/本地存储库以及公共存储库,例如go.uber.org/zap
)。我已经命名了我的模块github.internal.com/team_name/project_name
,我已经出售了我的依赖项。所以,我的项目结构如下:
然后,在main.go
我导入
所有这些都很好,我可以运行go build
没有问题。
当我尝试使用 Docker 构建时,问题就出现了。在我的 Dockerfile 中,我运行
当我运行docker build
它返回:
如何进入正确的目录以识别模块中的所有文件?
提前致谢!
go - 在 IntelliJ 中导入未加载,即使启用了 go modules 集成
当使用带有 Go 插件的 IntelliJ IDEA 或 GoLand 并使用 Go 1.11 或更高版本时,您可以通过转到 Preferences -> Languages & Frameworks -> Go -> Go Modules (vgo) 并选中“Enable Go Modules”框来启用 Go 模块(vgo) 整合”。
当您有一个由 正确初始化的项目go mod init
,因此有一个go.mod
和go.sum
文件时,它将在使用go build
或从 IntelliJ 的命令行构建时通过按下绿色播放图标下载依赖项。
但是,远程依赖项的导入语句可能仍然是红色的,即使它们似乎已被下载并出现在go.mod
文件中。
奇怪的是,go 项目实际上会从命令行运行,而不是从 IntelliJ 中运行。为什么会这样,我该如何解决?
go - go.mod 在修订版中有 post-v0 模块路径“git.example.com/owner/repo/v3”...?
v3.0.1
我的同事在更新之前推送了一个标签go.mod
以具有/v3
后缀(https://github.com/golang/go/wiki/Modules#releasing-modules-v2-or-higher)。我已经更新了模块路径 ( go.mod
) 和所有导入路径 ( *.go
) 来修复它,标记为v3.0.2
.
现在的问题是:
发现这个:go build 一直在抱怨:go.mod 有 post-v0 模块路径
所以,我删除了两个标签v3.0.0
,v3.0.1
将它指向最新的提交,重新推送,但问题仍然存在。
我注意到go.mod
仍然将旧版本称为间接依赖:
即使我将其更改为/v3 v3.0.2
它也会v0.1.12
自动恢复。
为什么?
我错过了什么?
2019 年 7 月 23 日星期二 05:54:56 +07
并且go.mod
现在正确更新:
但go get -v git.example.com/owner/repo@v3.0.2
仍然返回错误:
(d85c4f69ad17
是最新的提交master
)
我注意到两者都有v0.1.2
和:v3.0.2
go.sum
go - 构建命令行参数:无法加载本地包:找不到提供包的模块
我无法使用 go mod 加载本地包。我有单独的 go.mod 文件用于 repoA 和 repoB。我在任何地方都找不到解决方案。操作系统是windows。
当我从repoA运行主文件时,我有两个带有存储库的模块。它会尝试找到repoB的模块/包,然后它会抛出一个错误说
找不到提供包的模块
我的回购结构:-
go - Gitlab CI 和 Go 模块
我有一个 Go 项目,我想为我的项目编写一个 Gitlab CI 文件,但我看到加载模块要求时出错。这是我的 gitlab CI 文件:
go - 尝试使用本地子模块时出现问题
我正在尝试将 go 模块与一些尚未推送到 github 的本地代码一起使用(golang 版本为 1.12.7)
到目前为止,我有 3 个模块都在同一个父根目录下(兄弟文件夹)。maps
并且go-database-util
已经被推送,但是该模块应该使用我本地的任何内容(而且我还没有为 git repo 创建go-log-util
),所以我认为这不相关。
go-database-util
和都是go-log-util
库,不提供主包。有趣的是,go-database-util
在导入 /maps/main.go 时工作正常,但在尝试导入时并非如此go-log-util
。这是我尝试时得到的go build
maps
:
build github.com/X/maps: cannot load github/X/go-log-util: cannot find module providing package github/X/go-log-util
这里发生了什么?我一直在努力从go dep
to go 模块迁移,但到目前为止还没有运气。
相关代码如下。
非常感谢!:)
/maps/main.go
/maps/go.mod
/go-database-util/db.mod
go-database-util/go.mod
go-log-util/log.go
go-log-util/go.mod
go - 如何使用 go modules 删除已安装的包
我已经使用 go modules 安装了一个包(go get in Go 1.13),现在我想删除它。在文档中对此一无所知,在go get docu中也没有。
手动从 go.mod 中删除包并不能解决问题,因此它仍保留在 go.sum 中。
我应该如何以干净的方式删除包裹?