Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Import 戈朗进口问题_Import_Go_Package - Fatal编程技术网

Import 戈朗进口问题

Import 戈朗进口问题,import,go,package,Import,Go,Package,我正在尝试使用导入包进行内部使用,但我遇到了一些问题。 我的目录结构如下所示: app/ model/ file1.go file2.go ... main.go /usr/local/go/src/pkg/model (from $GOROOT) 当我尝试构建程序时,会出现如下错误: app/ model/ file1.go file2.go ... main.go /usr/

我正在尝试使用导入包进行内部使用,但我遇到了一些问题。
我的目录结构如下所示:

  app/
    model/
      file1.go
      file2.go
      ...
    main.go
/usr/local/go/src/pkg/model (from $GOROOT)
当我尝试构建程序时,会出现如下错误:

  app/
    model/
      file1.go
      file2.go
      ...
    main.go
/usr/local/go/src/pkg/model (from $GOROOT)
我希望能够在应用程序中的任何其他程序中调用模型程序,只需使用:

import "app/model"

在做这件事时,我有什么选择

您可以从
GOPATH
级别导入。。你所有的包裹都应该住在那里

例如,假设您的应用程序位于此处:

$GOPATH/src/dtrinh100/app/
…您希望导入的软件包在这里:

$GOPATH/src/github.com/other/package
您的输入将是:

import "github.com/other/package"

您应该回顾有关
GOPATH
环境变量的所有内容的文献。在开始Go时,了解其用途非常重要,首先,应将所有项目/包放在
GOPATH

中导入自定义包时,Go在GOPATH环境变量中列出的每个工作区中查找其定义。您的自定义包应该在src子目录中定义

如果将代码保存在某个源存储库中,那么应该使用该源存储库的根作为基本路径。例如,如果您在
GitHub.com/user
上有一个GitHub帐户,那么这应该是您的基本路径

请注意,在生成代码之前,不需要将代码发布到远程存储库。这只是一个好习惯,组织你的代码,好像你有一天会发布它。实际上,您可以选择任意路径名,只要它是标准库和更大的Go生态系统所独有的

您应该使用
github.com/user
作为我们的基本路径。在工作区内创建一个目录,用于保存源代码:

$ mkdir -p $GOPATH/src/github.com/user
您可以查看更多详细信息

看到和