回答

收藏

Error "can't load package: package my_prog: found packages my

技术问答 技术问答 325 人阅读 | 0 人回复 | 2023-09-12

在我的 GOPATH 中,我有这样的事:, V$ C3 u3 H% n* G& f' M
    /bin//pkg//src//src/my_prog//src/my_prog/main.go/src/my_prog/d_interface.go/src/my_prog/d_struct_that_implements_the_interface.go
    ' ^. ^, d9 y' O  \$ B
在main.go我package main,在d_interface.go和d_struct_that_implements_the_interface.go我有package my_prog。+ x( Y  B: t# s
当我尝试的时候,go build my_prog以下错误:" T3 Q# E2 t1 g( d' x# X+ Z
    can't load package: package my_prog: found packages my_prog (d_interface.go) and main (main.go) in C:\dev\Code\Go\src\my_prog9 T' |7 H0 z  b+ c: P% D
这是否意味着任何文件都属于它?package main应该放在自己的文件夹里?如果是这样,原因是什么?+ G% L; Y0 z; |* O( `5 s* O
                                                               
0 P6 w0 ~  P/ i    解决方案:                                                                . I. |; q. X; V3 i4 s
                                                                是的,每个包都必须在自己的目录中定义。
+ s3 I$ i0 F' A$ v! i# [* T2 f如何编写源结构 Go 代码中的定义。( A/ [0 Q. A3 H2 G& e: s
这个包是一个组件,你可以在多个程序中使用它,你可以发布,导入,从 URL 获取等。因此,拥有自己的目录是有意义的,就像程序可以拥有目录一样。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则