私は最初のヨーマンアプリを作ろうとしています。私は以下のリンクのすべてのステップに従いました: 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: {} }
了解しました。次の順序で実行した場合にのみ機能します。
ちょっと変だと思いますが、本当にそうしなければなりません。
私は同様の問題を抱えていて、トラブルシューティングを試みているときにこの投稿に遭遇しました。 YeomanプロジェクトのクローズされたGitHubの問題 で見つけたヒントでそれを理解しました。
私の解決策は、~/.bower
ディレクトリ(Mac)を削除し、プロジェクトのメインディレクトリでbower install
を再度実行することでした。これを実行すると、bower_componentsディレクトリが想定されていた場所にあり、サンプルプロジェクトが期待どおりに実行されていることがわかりました。しかし、Windowsマシンを使用しているようですが、Bowerディレクトリがどこにあるのかはわかりませんが、それが見つかれば、試してみてください。
それよりもはるかに簡単です。問題はBowerやGrunt-Karmaではありません。その前に問題が発生します。これらのコンポーネントをインストールするには、Gitが必要です。ある時点までNodeパッケージマネージャー(npm)がすべてを処理しますが、Gitが必要なものもあります。
つまり、Windowsを使用していて、Gitをインストールしていないか、cmdシェルを使用してこれを実行しようとしています。 Gitがインストールされている場合は、Git Bashを介してYeomanを実行するか、cmd Shellから実行するように設定してください:
ここで[システム環境変数]を下にスクロールして[パス]を見つけます。 [編集...]をクリックして、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のものを取り戻す場合は、準備完了です。 Yeomanはこれからcmdを通じて正常に動作します
プロジェクトを別のディレクトリに移動したところ、この問題が発生しました。 .bowerrcを古いプロジェクトディレクトリから新しいプロジェクトディレクトリに移動するだけです。
隠しファイルも忘れずに!彼らは彼ら自身を動かしません。
私は通常、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
プロジェクトをWindowsに移行しようとしたときに、この問題が発生しました。
Ruby、git、compass、yeomanをインストールし、npm install
は問題外でした。
すべてをインストールした後、上記のエラーが発生しました。
壁に頭をぶつけて、プロジェクトフォルダーを削除して、もう一度gitからダウンロードしました。新鮮な始まり。
npm install
bower install
grunt serve
動いた。
結局のところ、私の問題は、すべての依存関係を修正する前にサーバーを実行しようとしたことでした。
app/bower_components
でbower_componentsを探しています。 bower_componentsディレクトリーが存在する場合は、grunt構成が正しいパスを探していることを確認してください。
私は同じ問題を抱えていましたが、私のケースの根本的な原因は、yo angularコマンドを使用してプロジェクト構造を構築するときに、angular librariesを選択するステップがあることです。 、そのうちの4つを選びましたが、その過程で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 sanitizeをオフにすると、すべて機能します。これが役立つことを願っています!
Yeoman Teams Backbone Generatorを使用しても同じ問題が発生しました。見つかりました ここ 。
修正方法は簡単でした。
yo backbone:appName
亭のインストール
何らかの理由で、bower_componentsがジェネレーターによってインストールされていなかったため、コマンドを手動で実行すると問題が解決しました。