我用 GoLand 写了个小的 [web app 的 demo (点击查看代码)](https://gitee.com/g8up/go-uploader/tree/2b579f5457b4abb1644c9d0ab355636404ce8af0/)
只含有 main.go 和 router.go,都写了 `package main`
main 中引用 router 里定义的 handler 函数(函数名保持大写)。
在 GoLand 中运行时,提示那些 handler 函数找不到。
```
# command-line-arguments
.\main.go:32:37: undefined: Upload
.\main.go:33:35: undefined: Show
Compilation finished with exit code 2
```
我对自定义的 Package 这块内容理解的模糊,不知如何解决。
一定要把 router.go 塞到 router 文件夹里,然后`package router`吗?
同一个包内的函数和变量都是共享的,无需大写。
你这个应该是`go run main.go`的时候,router.go还没被编译
试试`go run *.go`,或者整体编译后`go build`后再运行
#3
更多评论