Приступить к инициализации модуля без VCS/Git с невозможностью определить путь к модулю

Я пытаюсь инициализировать новый проект go с модулем go (с помощью go 1.11). Я не планирую публиковать его в github или в другом месте, это всего лишь временный/тестовый проект с основным пакетом.

Всякий раз, когда я пытаюсь запустить go mod init в каталоге (вне моего $GOPATH), я получаю эту ошибку:

go: cannot determine module path for source directory/Users/... (outside GOPATH, no import comments)

Невозможно ли запустить модуль без использования git (или другого VCS)? Или есть обходное решение?

Ответы

Ответ 1

  Разве невозможно инициализировать модуль без использования git (или другого VCS)? Или же есть ли обходной путь?

Да, можно запускать модули без использования VSC, при инициализации модуля не нужно ничего делать с git или любым другим VCS.

Эта ошибка возникает, когда имя модуля не введено, пока init модуль, поэтому для генерации модуля modulename напишите эту команду.

$ go mod init modulename

Содержание go.mod будет

module modulename

EDIT:

Чтобы использовать модули из локального репозитория, используйте директиву replace

В вашем основном модуле, где вы проверяете свой локальный модуль, добавьте следующие строки

replace "X" v0.0.0 => "{location To your local module}"
require "X" v0.0.0

А затем в своем основном проекте импортировать пакет утилит из модуля X вы можете просто:

import "X/util"

Теперь, когда вы сделаете go build, он будет искать этот локальный модуль в том месте, которое вы указали в файле мода основного проекта.

Для большего объяснения