【发布时间】:2019-05-28 20:30:24
【问题描述】:
我想在本地查看我的包文档的外观。也就是说,我希望看到与您在 godoc.org 上看到的相同的东西,但在本地。
我在本地有一个简单的示例文件夹,但我无法让它工作。它正确输出文本文档:
~/code/go/gonotes (master) $ godoc .
PACKAGE DOCUMENTATION
package gonotes
import "."
FUNCTIONS
func Blah()
Here is header
Blah is function being use to test:
- go documentation
- blah like things
It is nice
但是,如果我运行 godoc -http=:6060 并导航到 http://localhost:6060/,我看到的内容与我在 golang.com 主页上看到的内容基本相同。 http://localhost:6060/gonotes 显示
lstat $GOROOT/gonotes: no such file or directory
我是否误解了-http 的工作原理?有什么方法可以在本地预览我的文档的 http 版本吗?
更新
我可以通过将文件复制到 src/gonotes 然后运行来让它出现:
GOPATH=/Users/jonah/code/go/gonotes godoc -http=:6060
以便在/Users/jonah/code/go/gonotes/src/gonotes 上提供实际文件。
这具有不显示安装在我的默认GOPATH 中的任何第三方库的副作用,所以我仍然想找到一个解决方案,只允许我按原样添加当前目录,而不添加src/curdir 给它,它仍然显示出来。
【问题讨论】:
-
godoc -http将提供所有可用包的文档,包括标准库。不用担心,您自己的包裹也在其中,请再看一遍。作为快捷方式,只需输入http://localhost:6060/pkg/your/package。 -
@icza 谢谢。我尝试了
http://localhost:6060/pkg/gonotes并得到了cannot find package "." in: /src/gonotes。我需要将源文件放在src下吗?目前它们只是在文件夹gonotes中,您可以从我包含在 OP 中的终端会话中看到。 -
为此,您的
gonotes包必须在GOPATH/src/gonotes内。 -
你不能把你的 Go 代码放到任意文件夹中。您必须遵循
GOPATH约定,有关详细信息,请参阅How to Write Go Code。 -
@icza 这不是使用 go 模块的全部意义吗?所以你没有绑定到 GOPATH?
标签: go