登录
首页 >  Golang >  Go问答

使用 golang 过滤器排除所有 Go 文件构建

来源:stackoverflow

时间:2024-02-14 18:54:25 109浏览 收藏

IT行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰。所以我们需要踏踏实实的不断学习,精进自己的技术,尤其是初学者。今天golang学习网给大家整理了《使用 golang 过滤器排除所有 Go 文件构建》,聊聊,我们一起来看看吧!

问题内容

我构建了一个简单的“hello, world”wasm 应用程序,例如:

goarch=wasm goos=js go build -o lib.wasm main.go

一切都很好。但后来我想在本地(linux)环境中测试我的代码。所以我把它改为一个相当标准的:

package main

import "fmt"

func main () {
    fmt.Println("test")
}

并做一个简单的:

go运行.

但现在我得到:

package xxx:构建约束排除 xxx 中的所有 go 文件

我知道,如果我指定 wasm 构建,我就不能指望在本地运行它。但我不再尝试进行 wasm 构建。我的 .go 源文件中没有构建约束,我的 go.mod 文件只有 package 和 go 版本。

如果我将这些文件复制到新目录,并且在没有 wasm 构建的情况下执行 go 运行 . - 一切都很好。

如果我这样做:

go 构建文件名.go

工作正常。

这就像“记住”这个目录应该是用 wasm 构建的 - 但我找不到什么/在哪里。

是否有缓存或其他地方正在记住一些我需要清除的构建设置?我尝试过 go cleango clean -cache - 没有运气!


正确答案


答案似乎是,如果文件名以 wasm.go 结尾 - go 将假设这确实是一个 wasm 文件。

这意味着正常的构建或运行将会失败(如果您没有指定正确的操作系统和架构) - 尽管使用显式文件名的运行(即使它以 wasm.go 结尾)也会正常工作。

???

文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《使用 golang 过滤器排除所有 Go 文件构建》文章吧,也可关注golang学习网公众号了解相关技术文章。

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