我构建了一个简单的"Hello,World“应用程序,类似于:
GOARCH=wasm GOOS=js go build -o lib.wasm main.go
平安无事。但是,我想在本地(Linux)环境中测试我的代码。所以我把它改成了一个很好的标准
package main
import "fmt"
func main () {
fmt.Println("test")
}然后做一个简单的:
go run .
但现在我明白了:
package xxx: build constraints exclude all Go files in xxx
我知道,如果我指定一个wasm构建,我不能期望在本地运行它。但我不想再做一个wasm的建筑了。在我的.go源文件中没有构建约束,而且我的go.mod文件只有包和go版本。
如果我将这些文件复制到一个新的目录中,并且只执行没有wasm构建的go run .操作,那么所有操作都是好的。
如果我这么做了
go build filename.go
它正常工作。
就像“记住”一些东西,这个目录应该是用wasm构建的--但是我找不到什么/在哪里。
是否有缓存或其他东西正在记住一些我需要清除的构建设置?我试过go clean和go clean -cache -没有运气!
发布于 2022-05-21 14:56:21
答案似乎是,如果文件名以wasm.go结尾,go将假定这确实是一个wasm文件。
这意味着正常的构建或运行将失败(如果您没有指定适当的OS和arch) --尽管具有显式文件名的运行(即使以wasm.go结尾)将正确工作。
???
https://stackoverflow.com/questions/72330627
复制相似问题