Как установить плагины - PullRequest
1 голос
/ 07 марта 2019

TL; DR: Где заканчиваются .so файлы при установке плагинов с go install -buildmode=plugin?

У меня есть проект, который использует плагины. Макет примерно такой:

myproject/
├── main.go
└── modules
    ├── bar
    │   └── main.go
    └── foo
        └── main.go

Когда я запускаю go install, двоичный файл устанавливается нормально. Но я также хотел бы запустить go install для каждого из моих модулей и сделать их доступными для основного двоичного файла повсюду в системе. Если я запускаю go install -buildmode=plugin из папки модуля (скажем, modules/foo), команда выполняется до конца, но я нигде не могу найти полученный файл.

1 Ответ

0 голосов
/ 08 марта 2019

Установка нормального пакета заканчивается:

GOPATH/pkg/<goos>_<goarch>_dynlink/path/to/parent/folder/packagename.a

Установка main пакетов заканчивается в:

GOPATH/bin/foldername

(где foldername - родительская папка пакета main, который вы устанавливаете, он получит расширение .exe в Windows).

Когда вы «устанавливаете» плагин (используя -buildmode=plugin), он заканчивается

GOPATH/pkg/<goos>_<goarch>_dynlink/path/to/parent/folder/foldername.a
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...