Не могу импортировать пакеты - PullRequest
0 голосов
/ 07 мая 2020

Я пытаюсь импортировать подкаталог, который есть в моем проекте, в свой основной файл, но по какой-то причине получаю эту ошибку:

could not import ./service (no package for import ./service)

Вот как я импортирую:

import (
"os"

"service"

)

Я тоже пробовал "service/app"

"./service/app"

"./service" ничего не работает, всегда одна и та же ошибка.

Я пытаюсь использовать app. go файл Это структура файла:

Project Directory
        -- main.go
        -- service (directory)
           -- app.go (file)

Я пытался перезапустить VS Code, пытался использовать go инструменты установки / обновления, ничего не работает. Кроме того, это мое главное развлечение. c:

func main() {
  a := &service.App()
  a.Initialize(
    os.Getenv("APP_DB_USERNAME"),
    os.Getenv("APP_DB_PASSWORD"),
    os.Getenv("APP_DB_NAME"),
  )

  a.Run(":8010")
}

&service.App() не показывает проблемы, но когда я удаляю импорт «service», появляется

undeclared name: service

Так что я не понимаю, в чем проблема. Эта ошибка иногда отображается и при импорте "os", я не знаю почему.

1 Ответ

1 голос
/ 07 мая 2020

Golang не поддерживает относительный импорт .

В модулях, наконец, есть имя для подкаталога. Если в родительском каталоге указано «module m», то подкаталог импортируется как «m / subdir», а не «./subdir".

. Итак, в вашем случае вам следует импортировать service package. как your_module_name/service.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...