Как исправить ошибку сборки Go "не удается загрузить пакет" с модулями Go? - PullRequest
11 голосов
/ 01 июля 2019

Я настраиваю новый проект, используя модули Go с этим руководством , а затем пытаюсь его собрать.

Модуль находится в папке за пределами $ GOPATH сследующая структура:

example.com
├── my-project
├── ├── main
├── ├── ├── main.go
├── ├── go.mod

Я запустил go mod init example.com/my-project в каталоге example.com/my-project и создал файл go.mod, показанный выше.

main.go имеет основное содержимое:

package main

import (
"fmt"
)
func main(){
 fmt.Println("Hello, world!")
}

После попытки запустить go build в каталоге example.com/my-project я получаю следующее сообщение об ошибке:

can't load package: package example.com/my-project: unknown import path "example.com/my-project": cannot find module providing package example.com/my-project.

Я также попытался запуститьgo build в каталоге /, за пределами example.com/my-project, и я получаю аналогичные результаты с ошибками:

can't load package: package .: no Go files in ...

Возможно, я неправильно понял некоторые основные вещи, так что спасибоза ваше терпение и любую помощь, которую вы можете оказать.

1 Ответ

1 голос
/ 18 июля 2019

нет необходимости в главной директории, просто переместите ваш main.go и go.mod на example.com/my-project, и он будет работать.

Корень проекта должен выглядеть следующим образом:

.
├── go.mod
└── main.go
...