2016-11-24 3 views
2

Вы знаете насчет Javascript fatigue?Heroku push issue: Bower resolver не найден

Теперь сделаю.

Я не разработчик javascript, но я использую Node и Angular для моего сервера побочных проектов.

Все мои пакеты узлов установлены с npm, а мои угловые пакеты - установщиком с bower. Потому что that's the way I learned it. Я поддерживаю package.json и bower.json, чтобы установить все. Как правило, то, что я делаю:

npm install 
bower install 

но Heroku установить только пакет NPM, поэтому решение должно было включать в себя запись сценария установки в package.json

Он работал довольно прекрасно, если несколько библиотек, которые не были (но это еще одна проблема).

Совсем отлично, так как сегодня, когда я застрял на сообщение об ошибке Heroku:

bower angular#*   ENORESOLVER Bower resolver not found: bower-npm-resolver 

Вот мой package.json

{ 
    "name"   : "my-marvelous-app", 
    "engines": { 
    "node": "5.0.0", 
    "npm": "3.3.6" 
    }, 
    "main"   : "server.js", 
    "dependencies" : { 
     "express"    : "4.5.x", 
     "mongoose"    : "4.2.x", 
     ... 
     [a bunch of important packages...] 
     ... 
     "vorpal"    : "latest", 
     "bower"     : "1.7.x" 
    }, 
    "scripts"   : { 
    "postinstall": "./node_modules/bower/bin/bower install" 
    } 
} 

и мой bower.json

{ 
    "name": "my-marvelous-backoffice", 
    "version": "1.0.0", 
    "dependencies": { 
    "angular"    : "latest", 
    "angular-bootstrap"  : "latest", 
    "angular-cookies"  : "latest", 
    "angular-route"   : "latest", 
    "bootstrap"    : "latest", 
    "font-awesome"   : "latest" 
    } 
} 

Я не» я знаю, что делать. npm install работает локально на моей машине, но не на героку. Пожалуйста, не советуйте мне использовать другой менеджер пакетов, например, yarn или что-то еще, я разработчик мобильных устройств, и у меня нет много времени, чтобы изучить еще один материал для шумихи, который будет устаревшим в шесть месяцев. (Извините за cinisism, это усталость Javascript!)

EDIT

я, наконец, понял, .bowerrc файл с этой конфигурацией

{ 
    "directory": "public/libs", 
    "resolvers": [ 
     "bower-npm-resolver" 
    ] 
} 

Я удалил resolvers записи и я снова работаю. Я должен был удалить некоторые угловые пакеты npm, однако ...

ответ

3

Я тоже ударил по этому проекту, который унаследовал. Решение оказалось:

[sudo] npm install -g bower-npm-resolver 

Хотя в вашем случае, удаление «арбитры»: раздел из вашего .bowerrc также работает, так как у вас нет зависимостей в bower.json, которые начинаются с префикса npm:.

+0

Спасибо за ваш ответ. Я не могу 'npm -g' что-то, так как я на геройку, и все должно быть в' package.json'. Если бы у меня были некоторые префиксы npm: ', я должен добавить' bower-npm-resolver' непосредственно в 'package.json'? – Martin

Смежные вопросы