【问题标题】:How to import all sub-directories from a certain app directory? [duplicate]如何从某个应用目录导入所有子目录? [复制]
【发布时间】:2019-04-06 06:45:30
【问题描述】:

我正在使用 Golang 创建一个 http 服务器。 (我有 PHP 开发背景。) 在 internal/app/model 中,我计划用人工逻辑制作几个包,我希望在 main.go 中加载模型文件夹的所有子目录。

我有以下文件夹结构:

[project folder]
\_cmd
     \_main.go
.
.
.
\_internal
          \_app
               \_model
                      \_article
                      \_product

我在这个意义上尝试了一些东西但没有成功:

import (
    "[project_folder]/[project]/internal/app/model/*"
)

【问题讨论】:

  • 这在 Go 中是不可能的。如果您一直需要所有模型,它们可能都应该在同一个包中。不要在 Go 中制作大量的小包。

标签: go package subdirectory


【解决方案1】:

你会:

  • 需要将project_folder 放入$GOPATH/src(如in here):旧方式
  • 使用go mod init project_folder 来声明名为project_folder 的模块:新方式,使用go modules。 (使用set GO111MODULE=onexport GO111MODULE=on

在后一种情况下,您的project_folder 可以在任何地方:不再是GOPATH

【讨论】:

  • 我认为您误解了这个问题。问题是如何进行某种通配符导入,一次导入多个包。
  • @Peter 与通配符一样吗?导入中没有通配符,我认为(stackoverflow.com/a/53356110/6309
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-12
  • 1970-01-01
  • 1970-01-01
  • 2013-08-09
相关资源
最近更新 更多