grunt serve from a fresh Yeoman install returns -

2020-07-09 08:16发布

问题:

After running yo angular and then cd'ing into the application's root folder (at same level as the app folder, gruntfile, package.json etc) I try grunt serve and I get the above error. Grunt won't start a server for me.

I have searched all over but couldn't find say to run npm install and bower install within the application's root directory, which I have tried but still the same error.

I've updated and checked bower/grunt/npm and they're all good.

Any suggestions please?

回答1:

I think I have found a solution!

http://yang-wei.github.io/blog/2014/06/01/npm-install-issues-plus-angularjs-set-up/

Running sudo on all the installs causes issues on the NPM folder in the home directory. I needed to change permissions of all usr/local folders by running:

sudo chown -R $USER /usr/local

sudo chown -R `whoami` ~/.npm

npm install -g yo grunt-cli bower

Now I go through the process again and no more errors!

The above link also seems to be pulled together from a bunch of answers at npm throws error without sudo



回答2:

The Gruntfile.js is not present under app directory but the root directory, i.e. parent of the app directory.

You must run the grunt serve form the root directory, i.e. parent of the app directory.



回答3:

I encountered similar error with "task --- not found" message.
I tried bitfidget's solution, but it couldn't help. It seemed to be different problem.
I updated yo and grunt-cli module like this:

npm update -g yo
npm update -g grunt-cli

and re-created whole project by "yo" command.
This solved the problem. I hope this can be help for anyone.