Не удалось установить зависимости sub npm для модуля pvt npm

У меня есть частное репо npm через sinopia, в котором я опубликовал приложение. Это полное сквозное приложение, использующее Angular2 на стороне пользовательского интерфейса. Он имеет свои собственные зависимости, упомянутые в package.json, такие как @angular/core, анимации и т. д.

Когда я устанавливаю этот модуль pvt, я получаю сообщение об ошибке, когда он не может установить подзависимости, то есть зависимости, которые являются частью модуля pvt.

Скриншот ошибки:

введите здесь описание изображения


person arjun    schedule 20.09.2017    source источник


Ответы (2)


Он ищет зависимости, которые не являются глобальными, но находятся в вашем частном репозитории. Вы должны изменить конфигурацию, чтобы разрешить загрузку этих зависимостей из глобального репозитория npm. Добавьте эту конфигурацию в файл .npmrc.

 @angular:registry=registry.npmjs.org 
person alexKhymenko    schedule 20.09.2017
comment
Спасибо, не могли бы вы показать мне, как я могу внести изменения, чтобы он мог устанавливать пакеты из глобального репозитория npm при установке этого пакета pvt. - person arjun; 21.09.2017
comment
Вы имеете в виду добавить указанную выше строку в мой модуль Pvt, а затем опубликовать ее? Я пробовал это, но не работал. Моя основная проблема в том, что я не могу установить общедоступные зависимости моего модуля Pvt. - person arjun; 21.09.2017
comment
да, это сработало частично, я имею в виду, что теперь модули @angular загружаются вне проекта. Итак, когда я устанавливаю свой пакет Pvt, все подзависимости, которые должны быть внутри модуля, устанавливаются отдельно. Таким образом, приложение не может получить к нему доступ, поскольку путь меняется (переходя на один уровень вверх) - person arjun; 22.09.2017

Ниже приведен обходной путь для пропуска sinopia, который не является оптимальным.

@angular:registry=registry.npmjs.org 

Sinopia не поддерживает пакеты областей по умолчанию, если вы не обновите файл конфигурации с помощью

packages:
  '@*/*':
    # scoped packages
    access: $all
    allow_access: $all
    allow_publish: $authenticated
    publish: $authenticated

Тем не мение. Вместо этого я рекомендую использовать sinopia переходы на вилку sinopia verdaccio, поддержка пакетов объемов которой встроена.

http://www.verdaccio.org/docs/en/packages.html

person Juan Picado    schedule 07.10.2017