在我导入此内容的场景中:
import (
"fmt"
"github.com/julienschmidt/httprouter"
"net/http"
"log"
)
但httprouter / router.go导入:
import (
"net/http"
)
我还需要导入" net / http"在我的文件中?
答案 0 :(得分:1)
您的文件只需要关注特定文件中使用的导入。
您可以尝试使用goimports来查看它是如何建议导入的。 Effective Go有这样的说法:
导入包时,包名称将成为其访问者 内容。导入“bytes”后,导入包可以进行通信 关于bytes.Buffer。
,这很不完全正确,因为你可以在同一个包中有多个文件,每个文件都需要导入它需要的任何东西(例如,包中的2个文件可能每个import fmt
答案 1 :(得分:0)
每个通过名称引用软件包的文件都必须导入该软件包。
每个文件都有一个file block,其中包含该文件中的所有Go源代码文本。 scope of the package name of an imported file是导入包的文件块。