如何强制Windows godoc更新golang中本地Web服务器上的私有包文档?

时间:2017-04-14 16:00:21

标签: windows go godoc

在Windows上运行本地godoc网络服务器时,如何强制godoc更新我的私有包文档?

运行命令:Windows上的“godoc -http:6060”不会更新私有包中的新godoc注释。当我第一次运行该命令时,它获得了已经存在的注释,但是在杀死并重新启动命令时没有更新。是否有缓存或我可以清除的东西?

我无处可寻。有这个真正古老的github问题(显然是固定的)由于年龄而冻结,并处理当前(和我自己的)go1.8 windows / amd64安装中的godoc中不存在的-sync选项:{{ 3}}

我在Linux上试过这个,当我杀死并重启“godoc -http:6060”命令时它会立即更新。

2 个答案:

答案 0 :(得分:0)

从技术上讲,这不是Go相关问题,但当文件夹内容发生变化时,与执行命令更相关。

标准HTTP Go程序有一些解决方案 - 那些拥有路由器并在特定端口上侦听的程序 - 但对于GoDoc来说没有什么太多。这是因为os依赖模型,操作系统需要有一种方法来检测和监听目录中的更改。

也许something from here可以帮助你,但它需要一些bash脚本 - 如果你在Windows上和/或没有Bash,这可能不是一个选项。

对于Go HTTP项目,有CodeGangsta's Gin packagePilu's Fresh。两者都很棒!

答案 1 :(得分:0)

帕特里克的回答指出了我正确的方向。解决方案是将整个包文件夹移动到另一个文件夹,然后再次运行“godoc -http:6060”命令强制更新。

为了创造一个godoc,这很好用。如果不更改导入或移回文件夹,您实际上无法构建任何内容。

奇怪的是,在执行此操作并将其移回后,godoc现在正在识别我的更新而不移动包文件夹。