Как вы создаете локальный модуль приложения VGO
Каждый пример, который я видел с vgo
пока что вам нужно написать свой модуль, загрузить его, а затем создать новый модуль приложения для тестирования базового модуля.
Есть ли способ протестировать модуль, пропустив шаг репо и просто добавив пакет main в свой модуль, чтобы просто выплюнуть что-то на консоль?
Я пытался создать свой фиктивный модуль module "example.com/m"
добавление фиктивного подпакета в package example
в /example/testing.go
затем добавил простой файл main.go и попытался импортировать пример пакета из моего фиктивного модуля, но безрезультатно.
Если бы у меня не было интернета, я был бы довольно потерян с рабочим процессом vgo (я потерян без него)
1 ответ
Я понял. В основном VGO позволяет включать package main
в корне, но при этом вы можете использовать только "основные" пакеты в корневом каталоге вашего проекта VGO, потому что golang разрешает только одно имя пакета на папку. Что хорошо, так как вы можете удалить основной файл позже, если хотите.
Ответ
Создать
package main
файл в корневом каталоге вашего проекта VGO сfn main
Создайте любое количество подпакетов в вашем проекте VGO, например:
package example
вexample
подпапка. Для развлечения создайте экспортированную функцию, которая печатает "Hello World" и назовите ее "WorldGreeting"- Теперь в вашем основном файле вы можете импортировать этот пакет, вызвав имя вашего модуля и имя подпакета. Так, например, если имя вашего модуля
bitbucket.com/User/MyVGOPackage
тогда вы импортируете свой субпакет в основной файл, какimport "bitbucket.com/User/MyVGOPackage/example"
затем вызовите вашу функцию внутри основногоexample.WorldGreeting()
- Сборка с использованием
go build
создать полный каталог (в случае, если у вас есть больше основных пакетов в каталоге) и vgo выложит исполняемый файл с именем "MyVGOPackage.exe"
Совет: если вы просто хотите создать приложение без странного имени модуля, просто переименуйте ваш модуль во что-то простое, например "MyApplication", и vgo прекрасно поймет ваш импорт. затем вернитесь и замените "bitbucket.com/User/MyVGOPackage/example" на "MyApplication/example", и все будет работать нормально. GoLand IDE от Jetbrain прекрасно понимает это использование, поэтому попробуйте, если у кода возникают проблемы с автозаполнением.