Как мне установить пакет Dart глобально?
Предоставляет ли Pub Package Manager способ глобальной установки пакетов?
Я был разработчиком node.js некоторое время, и мне было интересно, если есть pub
эквивалент npm install -g <package_name>
Если есть способ установить пакеты глобально, есть ли способ зарегистрировать двоичные сценарии, которые могут быть установлены, чтобы вызываться как команды оболочки.
1 ответ
зависимости
Все пакеты пабов установлены глобально (уникальный подкаталог ниже) ~/.pub-cache/
для Mac/Linux AppData\Roaming\Pub\Cache
в Windows, для каждой версии пакета), а затем привязывается только к вашему проекту, вы добавляете зависимость в pubspec.yaml
,
На самом деле ~/pub-cache
является глобальным для пользователя, а не для всей системы. Я не знаю нпм хорошо, но я думаю npm install -g
устанавливает его глобально для системы. В Dart нет ничего похожего, но вы все равно не устанавливаете пакет в Dart. При использовании пакета Pub в одной и той же версии в разных пакетах он сохраняется только один раз на диске.
исполняемые файлы глобального пакета
Пакеты, содержащие исполняемые сценарии, могут быть глобально (для каждого пользователя) активированы с помощью pub global activate ...
, Если вы добавите ~/.pub-cache/bin/
каталог на ваш путь, вы можете запустить эти исполняемые сценарии Dart только по имени (например, tuneup
для tuneup
пакет) или с pub global run packagename:scriptName
(лайк pub global run tuneup:tuneup
) Если скрипт и имя пакета совпадают, вы можете опустить :scriptName
часть.
исполняемые файлы локального пакета
Вы также можете запускать скрипты из зависимостей вашего текущего проекта с pub run packageName:scriptName
(лайк pub run test
для проведения юнит-тестов)