Ошибка такого файла или каталога 'bower_components'
Я пытаюсь сделать свое первое приложение-йомен. Я последовал за каждым шагом в следующей ссылке: http://ponderingdeveloper.com/2013/03/08/preparing-a-windows-machine-to-use-yeoman/
Когда я выполняю yo webapp
, все идет хорошо.
Но когда я использую команду grunt
, я сталкиваюсь со следующей ошибкой:
grunt --trace
Running "jshint:all" (jshint) task
>> 4 files lint free.
Running "clean:server" (clean) task
Cleaning ".tmp"...OK
Running "concurrent:test" (concurrent) task
Running "coffee:dist" (coffee) task
Warning: Errno::ENOENT on line ["33"] of C: No such file or directory - C:/D
ysk Google/Sublime/Norbert/motocycle/app/bower_components
Run with --trace to see the full backtrace Use --force to continue.
Aborted due to warnings.
Я искал папку bower_components - ее не существует. Я знаю, что могу изменить каталог в файле .bowerrc
, но я не знаю, какой каталог прав, я не могу его найти.
EDIT: Версии программ:
C:\Dysk Google\Sublime\Norbert\motocycle>grunt --version
grunt-cli v0.1.8
grunt v0.4.1
C:\Dysk Google\Sublime\Norbert\motocycle>yo --version
1.0.0-beta.6
C:\Dysk Google\Sublime\Norbert\motocycle>bower --version
0.9.2
C:\Dysk Google\Sublime\Norbert\motocycle>npm view generator-webapp
npm http GET https://registry.npmjs.org/generator-webapp
npm http 200 https://registry.npmjs.org/generator-webapp
{ name: 'generator-webapp',
description: 'Default Yeoman generator for scaffolding out a front-end web app
',
'dist-tags': { latest: '0.2.2' },
versions:
[ '0.1.0',
'0.1.1',
'0.1.2',
'0.1.3',
'0.1.4',
'0.1.5',
'0.1.6',
'0.1.7',
'0.2.0',
'0.2.1',
'0.2.2' ],
maintainers: 'sindresorhus <[email protected]>',
time:
{ '0.1.0': '2013-02-14T18:59:31.790Z',
'0.1.1': '2013-02-14T20:50:59.965Z',
'0.1.2': '2013-02-15T16:08:42.448Z',
'0.1.3': '2013-02-15T23:08:13.255Z',
'0.1.4': '2013-02-16T01:02:02.732Z',
'0.1.5': '2013-02-25T19:56:03.458Z',
'0.1.6': '2013-04-08T21:07:10.932Z',
'0.1.7': '2013-04-10T22:12:39.652Z',
'0.2.0': '2013-05-13T17:53:11.177Z',
'0.2.1': '2013-05-13T18:06:06.017Z',
'0.2.2': '2013-05-13T18:09:12.609Z' },
author: 'Chrome Developer Relations',
repository:
{ type: 'git',
url: 'git://github.com/yeoman/generator-webapp.git' },
users: { passy: true },
version: '0.2.2',
keywords:
[ 'yeoman-generator',
'web',
'app',
'front-end',
'h5bp',
'modernizr' ],
homepage: 'https://github.com/yeoman/generator-webapp',
bugs: 'https://github.com/yeoman/generator-webapp/issues',
main: 'app/index.js',
scripts: { test: 'mocha --reporter spec' },
dependencies:
{ 'yeoman-generator': '~0.11.1',
cheerio: '~0.10.8' },
peerDependencies: { 'generator-mocha': '~0.1.1' },
devDependencies: { mocha: '~1.9.0' },
engines: { node: '>=0.8.0' },
licenses: { type: 'BSD' },
readmeFilename: 'readme.md',
dist:
{ shasum: 'd9f69e7dbf0fd680b30abaf710d47fe38e50fd12',
tarball: 'http://registry.npmjs.org/generator-webapp/-/generator-webapp-0.2
.2.tgz' },
directories: {} }
Ответы
Ответ 1
Хорошо, я сделал это. Он работает только тогда, когда я делаю это в следующем порядке:
- yo позвоночник
- хрюкать
- очистка кэша bower
- удалить все файлы проекта, сделанные командой "yo backbone"
- yo позвоночник
- хрюкать
- сервер grunt
Я знаю его странное, но мне действительно нужно это делать.
Ответ 2
У меня была аналогичная проблема, и я столкнулся с этим сообщением, пытаясь устранить неполадки. Я понял это с подсказкой, которую я нашел в закрытой проблеме GitHub для проекта Yeoman.
Решением для меня было удаление моего каталога ~/.bower
(Mac) и запуск bower install
снова в основном каталоге проекта. Как только я это сделал, я обнаружил, что каталог bower_components был там, где он должен был быть, и пример проекта работает как ожидалось. Похоже, что вы на машине с Windows, и я не уверен, где находится этот каталог Bower для вас, но если вы его найдете, попробуйте попробовать.
Ответ 3
Это намного проще, чем все это. Проблема не в Bower или Grunt-Karma. Перед этим возникает проблема. Для установки этих компонентов вам потребуется Git. До определенной точки Node диспетчер пакетов (npm) обрабатывает все. Но некоторые вещи нуждаются в Git.
Итак, вы используете Windows, и либо вы не установили Git, либо пытаетесь запустить это через оболочку cmd. Если у вас установлено Git, запустите Yeoman через Git Bash или еще, чтобы установить его для запуска из командной оболочки cmd также:
- Меню "Пуск" > щелкните правой кнопкой мыши "Компьютер" > "Свойства"
- Слева перейдите к Advanced System Settings > Environment Variables
Здесь в разделе "Системные переменные" прокрутите вниз и найдите "Путь". Нажмите "Изменить"... и введите путь к Git Bash. Очень важно разместить полуколонну перед уже существующим путем, чтобы разделить их. Также вам не нужны кавычки или фактический файл sh.exe. Он должен выглядеть примерно так:
C:\Ruby193\bin;%SystemRoot%\system32;C:\Program Files\nodejs\;C:\Program Files (x86)\Git\bin\
Итак, вы можете видеть, сначала у нас есть Ruby, затем system32, затем nodejs и, наконец, Git. Это лишь некоторые из того, что вы, вероятно, увидите. Не меняйте ничего, просто добавьте Git в конец.
Чтобы проверить, сработало ли это, от типа cmd Git и нажмите enter. Если вы вернетесь, "git" не распознано, он не сработал. Если вы вернетесь к Git, вам будет хорошо. Йомен будет отлично работать с этого момента через cmd
Ответ 4
Я перенес свой проект в другой каталог и испытал эту проблему.
Просто нужно переместить .bowerrc из старого каталога проекта в новый.
Не забывайте свои скрытые файлы, дети! Они не будут двигаться.
Ответ 5
У меня была эта проблема, когда я попытался перенести проект на окна.
Полностью не в порядке мне пришлось установить ruby, git, компас, йоман, а затем запомнить npm install
просто не могло быть и речи.
После того, как я установил все, я получил ошибку выше.
Прижав голову к стене, я удалил папку проекта и снова загрузил ее с git. Начиная свежий.
npm install
bower install
grunt serve
Это сработало.
В конце концов моя проблема состояла в том, что я попытался запустить сервер, прежде чем убедиться, что все мои зависимости исправлены.
Ответ 6
Обычно я пишу startup script для таких вещей, как это для приложений Yeoman:
start.sh:
mkdir ~/projectdir/app/bower_components
cd ~/projectdir/app/
sudo apt-get install ruby &&
sudo gem install sass compass &&
npm install &&
sudo npm install -g grunt-cli &&
sudo npm install -g bower &&
grunt
Ответ 7
У меня была одна и та же проблема, основной причиной моего случая является то, что когда я строю проектную структуру с помощью команды yo angular, есть выбор для выбора библиотек angular, я выбрал четыре из них. но при этом произошла ошибка во время установки angular -sanitize 1.2.0.
bower angular-sanitize#~1.2.0 ENOTFOUND Request to https://bower.herokuapp.com/packages/angular-sanitize failed: getaddrinfo ENOTFOUND
так что все работает, когда снимите галочку angular.
Надеюсь, это поможет вам!
Ответ 8
Он ищет bower_components в app/bower_components
. Если ваш каталог bower_components существует, убедитесь, что ваша версия grunt ищет правильный путь.
Ответ 9
Просто у вас была такая же проблема с использованием генератора магистралей Yeoman Teams; найдено здесь.
Как я исправил это было просто..
yo позвоночник: appName
установка bower
По какой-то причине генераторы bower_components не были установлены генератором, поэтому запуск команды вручную разрешил проблему.