我开始尝试Go,而我正面临一个问题(我认为)在使用虚拟机的语言中不存在。
我有src/test/main.go
文件引用src/test/views/
文件夹中的模板。
当我使用go run main.go
时,它会运行go install
,然后在我的bin
文件夹中运行可执行文件(./test
)时出现错误:
views/edit.html: no such file or directory
那么,Go如何编译我的项目(文件/文件夹结构相关)以及如何以允许我使用go run
和go install/executable
的方式使用路径?
答案 0 :(得分:2)
如果在代码中指定了相对路径,就像在views/edit.html
中一样,它也会相对于二进制位置进行查找。您需要使路径绝对,或使用一些逻辑来确定模板的位置。
另一种选择是使用https://github.com/jteeuwen/go-bindata或https://github.com/elazarl/go-bindata-assetfs,这样可以省去麻烦。