команда bower не знайшла windows


107

У мене виникають величезні проблеми, коли я намагаюся використовувати bower (для встановлення фундаменту 5) або отримати щось, що стосується роботи в командному рядку.

Я встановив

  • рубін 1.9.3
  • git (з параметром запуску з командного рядка)
  • Nodejs

Я успішно бігав

npm install -g bower grunt-cli
gem install foundation

і ці добре побігли. Я заглянув у npm/node_modulesкаталог і можу побачити bowerтам папку.

Кожен раз, коли я набираю bowerабо в cmd, ruby cmdабо git bashотримую

команда не розпізнана

Я встановив шлях git у змінних оточення.

Що дратує - це інструкція на сайті bower. У ньому зазначено:

npm install -g bower
bower install

Ну це не працює!



Нещодавно я написав допис у блозі про те, як розпочати роботу з Bower. Це супер базово, і є github repo, де ви можете перевірити код. Можливо, це допоможе вам: thelifelifebalance.com/llb-web-app-series-part-1-bower
cs_stackX

2
Я на цьому також затримався на деякий час. Все було налагоджено, перезавантажено і навіть бурчання працювало, поки на моїй новій машині Windows 8.1 не було роботи. Лише я зайшов у глобальну папку npm_modules і запустив звідти бауер, що став "відклеєним". Тоді Бауер працював із моєї папки проекту. Я перезавантажився, і проблема все-таки була вирішена ... Незнайома відповідь, я знаю, але саме так сталося зі мною.
користувач1889992

Відповіді:


247

Я також наткнувся на цю проблему npm install -g bower. Я вирішив проблему, додавши до мого шляху бінарну папку npm.

Ось кілька корисних підказок для цього:

  1. Знайти місце розташування ваших НПХ глобальних довічних файлів: npm config get prefix. Цей шлях може виглядати приблизно так C:\Users\username\AppData\Roaming\npm(або C:\ProgramData\chocolatey\lib\nodejs.commandline.X.XX.XX\toolsякщо ви використовуєте Chocolatey ).
  2. Додайте шлях від кроку 1 до свого Шляху.

    • Відкрийте панель керування Windows, знайдіть environment, а потім натисніть на edit environment variables for your accountабо редагуйте змінні системного середовища`.

    • Знайдіть змінну з назвою Pathабо PATH, або створіть її, якщо її не існує.

    • Вставте шлях з кроку 1 сюди (з ;розмежуванням).

    • Можливо, вам доведеться перезапустити вікно командного рядка.

  3. Тепер ви повинні мати можливість вводити bowerкоманди.


1
Для користувачів з шоколадом: C: \ ProgramData \ chocolatey \ lib \ nodejs.commandline.0.10.33 \ tools
KimchiMan

Працює для npm 1.3.2та bower 1.7.9.
Анімеш Пандей

У моєму випадку "C: \ Users \ username \ AppData \ Roaming \ npm" вже було встановлено у змінних середовищах, однак запуск "npm config get prefix" виявив, що шлях має .ssh у ньому (C: \ Users \ username \ .ssh \ AppData \ Roaming \ npm), перезапис цього в змінній оточення вирішив проблему.
Моніс Ікбал

для / f% a ('npm config get prefix') do setx path% a
Alex

Просто для того, щоб повідомити інших, це працювало для мене з тією самою проблемою, з якою я стикався і в Дженкінса через Windows, на відміну від багатьох відповідей на діагностику, пов'язану з Дженкінсом.
Моніс Ікбал

19

у випадку, якщо це допоможе.

Я є npm / bower nooB - але те, що трапилося в моєму випадку, - це те, що я використовував підручник Angular JS, який, здається, має встановити bower для використання через npm , а НЕ безпосередньо через командний рядок.

Примітка. У моєму випадку, я думаю, що мій пристрій встановити помилки Я запустив це, щоб виправити свою установку:

npm install -gf bower

Тоді я відредагував свій файл bower.json, щоб додати до нової бібліотеки, яку я хотів використовувати (у моєму випадку кутова санітарія)

Я компакт-диск на місце мого проекту

cd myProjectPath

Потім для запуску bower я фактично використовував npm install:

npm install

Це, здається, працює bower як пакет вузлів, який, в свою чергу, сканує bower.json та встановлює будь-які відсутні пакети bower.

Щоб запустити bower як пакет npm, додайте npmперед командою bower:

npm bower -v

сподіваюся, що це допоможе,

Шон


1
Як можна "використовувати його через npm"?
парі

привіт, що працює на парі - я, чесно кажучи, минув час, оскільки я написав це. Я думаю, що я мав на увазі «нормальний» спосіб запуску bower - з командного рядка: bower, але в тексті вище я використовував: npm install
Sean

11

Якщо вище рішення не працюють. Я думаю, вам слід вказати абсолютний шлях для використання bower в командному рядку. У своїй папці додатків я просто дзвоню

C:\Users\yourusername\AppData\Roaming\npm\bower.cmd install

Це вміст у моїй bower.cmd. Схоже, мої Windows не можуть розпізнати змінну ~ dp0,

node  "C:\Users\yourusername\AppData\Roaming\npm\node_modules\bower\bin\bower" %*

так, що працював як баутер встановити приголомшливий, але мені це потрібно, щоб він працював як установка
баузера

Отримав повідомлення без присутності bower.json
hfrog713

2

Це однозначно станеться, якщо ваша змінна PATH для Windows близька до довжини символу 1024. Тож нові посилання, такі як "C: \ Users \ username \ AppData \ Roaming \ npm", просто не впишуться в це.

Перевірте свій PATH, видаліть зайві речі та спробуйте перевстановити node.js та bower тощо. Також є спосіб збільшити ліміт довжини 1024


1

Як згадували інші, потрібно додавати бауер у змінні середовища, але найпростіший спосіб знайти - просто спершу введіть своє місцезнаходження в npm, а потім скористайтеся Browse Fileта знайдіть bower у вашій системі (ви також можете шукати її на панелі пошуку), оскільки місцезнаходження може відрізнятися для різних користувачів.

зразок в моєму кінці


1

1. Введіть windows cmd:

for /f %a ('npm config get prefix') do setx path %a

2. Перезавантажте cmd


0

Те саме питання. Я вирішив це за допомогою іншої версії бауера. Він працює, коли я намагався використовувати версію 1.2.6

$ npm встановити -g bower@1.2.6


0

У мене виникла ця проблема після встановлення Chocolatey 0.9.8.28. Я спробував більшість перелічених тут рішень, але мені не вдалося визначити "bower -v" у командному рядку Powershell. Це здалося трохи дивним, оскільки Install Chocolatey "все про" Powershell. Врешті-решт мені вдалося досягти успіху, встановивши шлях, щоб Powershell міг знайти оновлені параметри змінної PATH, але мені потрібна допомога, щоб зрозуміти, чому і як це зробити, що я надаю нижче:

Після відмови з Powershell спочатку я зміг перейти до стандартного командного рядка DOS (не використовуючи cmd / c в powerhell) і успішно виконати всі варіанти налаштування шляху, які обговорювалися вище, і отримав успіх у визначенні команд bower та bower командним рядком DOS. І вікно cmd показало повний оновлений шлях (C: \ ProgramData \ chocolatey \ lib \ nodejs.commandline.0.10.34 \ tools) - зауважте, що номер версії може змінитись із списку почесним KimchiMan.

Цей PATH зберігався через закриття та відкриття нових вікон командного рядка DOS, але він не був розпізнаний (ніколи) в жодних вікнах Powershell.

Тоді я виявив таке пов'язане обговорення: Встановити параметри шляху Powershell.

Це вказує, що Powershell розпізнає версію налаштувань шляху HKLM при запуску. І можна встановити Шлях ВСІМ на сесії (непостійний) або в Реєстрі (стійкий). Далі безпосередньо з цієї дискусії.

Ці команди можуть встановити PATH тимчасово для сесії повноважень:

$env:Path = 'New path'
[System.Environment]::SetEnvironmentVariable('Path', 'New Path', 'Process')

Ці команди можуть постійно встановити PATH для всіх нових сеансів Powershell:

Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Session Manager\Environment' -Name 'Path' -Value 'New Path'
[System.Environment]::SetEnvironmentVariable('Path', 'New Path', 'Machine')

Але раніше я заплутався з налаштуванням налаштувань реєстру, і я не вважаю, що рядки або два сценарії PS взагалі не вирішують завдання. Тому я навіть не спробував цього варіанту.

Натомість я зайшов до панелі керування / консолі системи та змінив шлях через діалогове вікно змінних середовища. Я помітив, що всі зусилля, які я доклав, щоб змінити шлях із встановленим PATH у командному рядку DOS, працювали під час сеансу Windows, але новий запис шляху не зберігався до змінних середовища / реєстру, хоча сесія Dos працювала як адміністратор.

Після того, як я вніс цю зміну через Панель управління, оновлений шлях до bower у папці інструментів Chococlatey (і, імовірно, всі наступні встановлення інструменту) були постійно встановлені, і bower був доступний як в командному рядку DOS, так і в командному рядку Powershell.

сподіваюся, що це допоможе ...


0

Видалено 64-бітну та встановлену 32-бітну версію nodejs разом з git-32bit працювали!


0

Мав те саме питання. Я щойно запустив "npm install -g bower", потім відвідав каталог, куди його завантажили, у моєму випадку розташування було "C: \ Users \ user \ AppData \ Roaming \ npm \ node_modules \ bower"

З каталогу я запустив bower, і все працює нормально, навіть з іншого каталогу

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.