构建约束排除了所有Go文件

zzwlnbp8  于 2022-12-07  发布在  Go
关注(0)|答案(8)|浏览(977)

导入“golang.org/x/net/route“时
它告诉“构建约束排除go/src/ www.example.com中的所有Go文件golang.org/x/net/routego“
我在Windows/Linux上使用VSCode编辑器
我在网上搜索了一下,没有看到类似问题的解决方案

package main

import (
    "golang.org/x/net/route"
)

{
    rib, _ := route.FetchRIB(0, route.RIBTypeRoute, 0)
    messages, err := route.ParseRIB(route.RIBTypeRoute, rib)
}
bz4sfanl

bz4sfanl1#

我们在Goland下遇到同样的错误,可以这样解决
如果您想在Mac下设置GOOS = linux,只需在文件// +build linux,amd64,go1.15,!cgo的头中添加此行,这意味着我们声明此文件适用于具有以下要求的目标系统:Linux,AMD64架构,1.15 Go版本,不支持CGO。

2022年4月8日更新

在go 1.17之后,go命令现在可以理解//go:build行,并且优先于// +build行。新的语法使用布尔表达式,就像Go语言一样,并且应该更不容易出错。下面是更多的details

// go:build (darwin && cgo) || linux
// +build darwin,cgo linux
ssgvzors

ssgvzors2#

我在 Goland 中遇到了这个问题(WSL2上的源代码和win上的Goland)。
我可以用

go clean -modcache

随后的构建将一切重新整理好。

fkaflof6

fkaflof63#

尝试删除go/src/www. example. com中的文件夹xgolang.org/

vom3gejh

vom3gejh4#

在我的例子中我只是偶然地用测试文件替换了原始代码,它里面包含着下面的注解:

//go:build unittest
// +build unittest
wqsoz72f

wqsoz72f5#

这个错误似乎相当含糊。
在我的例子中,我的项目使用CGO,当环境中有CGO_ENABLED=0时,这个错误就会出现,这可以通过取消设置这个env变量或者设置CGO_ENABLED=1来解决

rjee0c15

rjee0c156#

在我的情况下,它似乎去获取失败,在GOPATH中引用的文件夹是空的。检查您的库文件夹,这是抱怨在这里。

8ehkhllq

8ehkhllq7#

“构建约束排除go/src/ www.example.com中的所有Go文件golang.org/x/net/routego“在Intellij中:
1.导航到项目资源管理器中的文件夹
1.右键单击-〉将文件夹标记为未排除。

ergxz8rk

ergxz8rk8#

如果使用go get命令时出现错误build constraints exclude all Go files in ...,请按如下所示指定路径
错误:

$ go get {HOST}/platform/be-photo

成功率:

$ go get {HOST}/platform/be-photo/external/client

相关问题