让我们假设运行go install -v importpath会生成一个可执行文件并将其安装到中$GOPATH/bin/program。该go工具无法安装资源文件。当我运行时program,我希望它访问.NET下的一些资源文件$GOPATH/src/importpath。从已安装的可执行文件访问此类资源文件的最佳方法是什么?
3 回答
回首忆惘然
TA贡献1847条经验 获得超11个赞
go install并非旨在执行您想做的事情。
如果您坚持使用go install,则可以将资源嵌入可执行文件中(源代码中的字节数组)。
另一个选择是使用运行go install的部署脚本,然后将资源复制到可执行文件已知的位置。
如果您希望程序可以由您之外的其他人安装,则应使用目标操作系统上的标准打包系统(例如Linux上的apt / rpm,Windows上的安装程序可执行文件,Mac上的.dmg文件等)。 )
红颜莎娜
TA贡献1842条经验 获得超12个赞
GOPATH环境变量
在Unix上,该值是用冒号分隔的字符串。在Windows上,该值为分号分隔的字符串。在计划9中,该值是一个列表。
因此,$GOPATH/bin/program而$GOPATH/src/importpath不一定是有效的。例如,在Linux上,
$ GOPATH=$HOME/gopath:$HOME/go
$ cd $GOPATH/bin/go
bash: cd: /home/peter/gopath:/home/peter/go/bin/go: No such file or directory
- 3 回答
- 0 关注
- 282 浏览
添加回答
举报
0/150
提交
取消