What is causing 'grunt serve' to throw 'No Bower components found'?

AngularjsNpmBower

Angularjs Problem Overview


I am starting out angular app with angular-fullstack in my Windows 7 box. I installed bunch of npm packages with -g options, including grunt-bower-install. I created the application first by running

> yo angular-fullstack appname

There were no exception during the application creation. After application was created successfully I tried to run the app using

> grunt serve

expecting the server to run. But the 'grunt serve' failed with

> Running "bower-install:app" (bower-install) task > Cannot find where you keep your Bower packages.

> We tried looking for a .bowerrc file, but couldn't find a custom directory property defined. We then tried bower_components, but it looks like that doesn't exist either. As a last resort, we tried the pre-1.0 components directory, but that also couldn't be found.

> Unfortunately, we can't proceed without knowing where the Bower > packages you have installed are.

> Fatal error: No Bower components found.

I did find .bowerrc file and it was pointing to app/bower_components. Unfortunately, bower_components file was no where to be found. I am not sure what should be the content of the file to create it myself. Is it the missing file causing this problem or is there a npm package, I did not install correctly?

  • I installed bower using npm as well *

Thanks

Angularjs Solutions


Solution 1 - Angularjs

Confusingly, the grunt-bower-install task that comes with angular-fullstack doesn't install bower components. It doesn't install anything. This error is trying to let you know that it can't find the bower_components directly, so it can't do its thing.

To fix the issue, run bower install.

If you don't have Bower installed, run npm install -g bower first.

Solution 2 - Angularjs

I had the same issue, here's what worked in my case:

  1. installed ruby and compass (yeoman needs these)
  2. verified that path to Ruby bin folder is added to %PATH%
  3. installed Git
  4. restarted cmd window and ran "bower install" in the app folder

After that, grunt serve command worked perfectly. Note: maybe installing Git and running bower install would suffice in your case.

Solution 3 - Angularjs

I faced the same problem but only did npm install -g bower and then bower install and got grunt serve working.

I did not need to do any of the things mentioned by Olga.

Hope this helps.

Solution 4 - Angularjs

npm install -g bower doesn't install bower components, you should run as well bower install to have all bower's components installed and then run grunt serve. It should work fine

Solution 5 - Angularjs

Try to do bower install. If its failing saying not able to connect to git then you can change repo pointing location by simply running below command

$ git config --global url.https://github.com/.insteadOf git://github.com/ 

This will ensure that you will be downloaded over https instead of git if its causing orginasation firewall to block it.

Solution 6 - Angularjs

In my case, I added sudo for it to work. So, I ran sudo npm install -g bowerand then bower install. grunt serve then worked when I ran it.

Solution 7 - Angularjs

The Bower installation requires the packages to be brought from the Git repository, so first you need to install the Git application in your system. You can download it from this link :https://git-scm.com/downloads . Now after your have downloaded it , there may be a chance that the PATH may not be set up, so go to ControlPanel -> System and Security -> System -> Advance System Settings (on the left-hand side), click it, then goto Environment Variables -> System Variables -> PATH , click edit , and write down the following paths :

;C:\Users\admin\AppData\Local\Programs\Git\bin; C:\Users\admin\AppData\Local\Programs\Git\cmd ....Well the above path is where Git was installed in my system, you can crawl to the place in your system where Git was installed and select the paths from the "bin" and "cmd" folder and paste it on the PATH variable.

Now, after the GIT path is setup, you can now type in the command " $ bower install " , this will install all of your bower packages.

Solution 8 - Angularjs

npm install -g bower
bower install
grunt serve

worked for me ...

Solution 9 - Angularjs

npm install -g bower
bower install
grunt serve

It's worked too

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionNairView Question on Stackoverflow
Solution 1 - AngularjsJames van DykeView Answer on Stackoverflow
Solution 2 - AngularjsOlga GnatenkoView Answer on Stackoverflow
Solution 3 - AngularjsPankaj C.View Answer on Stackoverflow
Solution 4 - AngularjsIliassView Answer on Stackoverflow
Solution 5 - AngularjsAnup BView Answer on Stackoverflow
Solution 6 - AngularjsiamapjView Answer on Stackoverflow
Solution 7 - AngularjsAditya Singh ParmarView Answer on Stackoverflow
Solution 8 - AngularjsGautham V kidiyoorView Answer on Stackoverflow
Solution 9 - AngularjsNinaView Answer on Stackoverflow