【发布时间】:2022-01-27 23:43:46
【问题描述】:
尝试在一个简单、扁平的代码文件夹中提供godoc。在线文档没有解释如何完成这个简单的任务。
所以,创建这个简单的结构,
/tmp/testgodoc$ tree
.
└── src
├── main (just the binary)
└── main.go
1 directory, 2 files
main.go 简单的地方
/tmp/testgodoc$ cat src/main.go
// Hello godoc
package main
import "fmt"
// Say Hello
func main() {
fmt.Println("Hello")
}
在 GOPATH 或模块模式下运行时,在浏览器中打开 localhost:6060 不会给出记录当前文件夹的预期结果。
在模块模式下运行给出这个输出和结果:
/tmp/testgodoc$ ~/go/bin/godoc -goroot=. -http=:6060
using module mode; GOMOD=/dev/null
(when Ctrl-C:) cannot find package "." in:
/src/main
^C
并且在GOPATH模式下运行似乎指向本地标准库:
/tmp/testgodoc$ GO111MODULE=off ~/go/bin/godoc -goroot=. -http=:6060
using GOPATH mode
^C
【问题讨论】:
-
@ArkadiuszDrabczyk 已经阅读了答案,但没有一个选项有帮助。在 GOPATH 模式下“只需输入
http://localhost:6060/pkg/your/package”不起作用,请参见第二张截图。在模块模式下,已经尝试了 workaroud(src文件夹),但也没有工作,正如您在第一个屏幕截图中看到的那样。下面的答案确实工作!至少在模块模式下。
标签: go project documentation godoc