从另一个本地包导入本地包

时间:2019-07-25 14:15:45

标签: go

我的项目结构如下:

MicroService-Server (project name and folder) 
    main.go
    ---model(folder name)
    ------ package model
    ---logics (folder name)
    -----campaigncreation (folder name)
    --------package campaigncreation
    -----utilities (folder name)
    --------package utilities
    ---controller (folder name)

我想在“ campaigncreation”中使用“模型”包,我尝试了各种导入语句,但是所有这些语句都出现错误:

import (
    model "././model"
)

import (
    model "./model"
)

import (
    model "MicroService-Server/model"
)

import (
    model "./model"
)

1 个答案:

答案 0 :(得分:1)

在Go社区中强烈不建议相对进口。它使代码含糊不清且容易出错。

您应该从$ GOPATH / src /开始导入任何自定义程序包。 因此,如果您的MicroService-Server像$ GOPATH / src / MicroService-Server /一样驻留,那么您可以像这样轻松地在Campaigncreation中导入模型包:

import "MicroService-Server/model"

有一个问题,如果您的MicroService-Server文件夹不在$ GOPATH内,则无法导入它。为了实现可移植性,您应该使用官方的“ go mod”或第三方滑行之类的供应商工具。