尝试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