Как установить модуль Golang из локального источника?

Я попытался установить модуль Golang командой "go install github.com/ibmdb/go_ibm_db/installer@latest" и получил ошибку "go: github.com/ibmdb/go_ibm_db/installer@latest: module github.com/ibmdb/go_ibm_db/installer: Get "https://proxy.golang.org/github.com/ibmdb/go_ibm_d...": dial tcp: lookup proxy.golang.org: getaddrinfow: This is usually a temporary error during hostname resolution and means that the local server did not receive a response from an authoritative server."

У меня ограничен доступ к интернету и не все ресурсы доступны. Возможно ли установить модуль из ранее скачанного исходного кода, подобно тому, как это делается в Python с помощью файла .whl?
  • 7 декабря 2023 г. 7:19
Ответы на вопрос 2
Да, в Go возможно установить модуль из локального источника. Вам понадобится скопировать исходный код модуля в правильное место в вашем рабочем пространстве Go и затем использовать команду `go install` для установки модуля.

Вот шаги, которые вы можете следовать:

1. Скопируйте исходный код модуля в ваше рабочее пространство Go. Обычно это расположение GOPATH/src/github.com/ibmdb/go_ibm_db/ (если у вас нет GOPATH, обычно используется по умолчанию $HOME/go). Убедитесь, что структура каталогов в соответствии с импортным путем модуля.

2. Перейдите в каталог модуля:
```
cd $GOPATH/src/github.com/ibmdb/go_ibm_db/
```

3. Используйте команду `go install`, чтобы установить модуль:
```
go install
```

Если модуль успешно скомпилирован и установлен, он будет доступен для использования в ваших программах Go.

Если у вас возникли проблемы с `go install` или при установке зависимостей модуля, вы можете использовать команду `go get` вместо `go install` для автоматической загрузки и установки зависимостей:
```
go get github.com/ibmdb/go_ibm_db/
```

Убедитесь, что вы выполните эти команды из командной строки или терминала, а не из интерпретатора Go.

Надеюсь, это поможет вам установить модуль Go из локального источника!
1. Можно включить вендоринг - тогда все зависимости будут размещены в подпапке vendor и при следующих сборках доступ в интернет не понадобится.go mod vendor2. Можно установить переменную GOPROXY так, чтобы исходники качались не через прокси proxy.golang.org, а через другой или напрямую с гитхаба.Environment variables3. Можно использовать уже скачанный локально репозиторий.replace directive in go.mod
Похожие вопросы