为了账号安全,请及时绑定邮箱和手机立即绑定

找不到主模块;见“去帮助模块”

找不到主模块;见“去帮助模块”

Go
哔哔one 2022-06-13 16:45:16
我正在构建一个 Wasm 应用程序并编译它,我有一个 shell 脚本。当我从终端手动运行它时,我有以下内容:/app/Go/assets$ ./script.compile.wasm.sh Wasm compiled该文件的内容是:#!/bin/shGOOS=js GOARCH=wasm go build -o ./app.wasm ./wasm.goecho "Wasm compiled"wasm 文件已正确编译。但是当我从 Docker 运行它时,我得到:Step 15/20 : RUN ./assets/compile.wasm.sh ---> Running in 38dd56259b0fgo: cannot find main module; see 'go help modules'Wasm compiled编译失败。Docker 行如下所示:RUN ./assets/compile.wasm.sh
查看完整描述

1 回答

?
一只名叫tom的猫

TA贡献1906条经验 获得超3个赞

在您的本地情况下,您是从assets目录启动脚本;在 Dockerfile 案例中,您从其父目录启动它。这很重要,因为当脚本引用类似的文件时./wasm.go,这些文件是相对于当前目录而不是包含脚本的目录解析的。


您可以通过确保您也在assetsDockerfile 的目录中来解决此问题:


# Only for this command; will reset afterwards

RUN cd assets && ./compile.wasm.sh

# For this and all following commands, unless reset with another WORKDIR

WORKDIR /app/Go/assets

RUN ./compile.wasm.sh


查看完整回答
反对 回复 2022-06-13
  • 1 回答
  • 0 关注
  • 140 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号