“Fatal error: Unable to find local grunt.” on Windows 7

gruntjs

I cannot get grunt to work at all on Windows 7. Following the instructions on the Grunt website (http://gruntjs.com/getting-started) I've run:

npm uninstall -g grunt-cli
npm uninstall grunt
npm uninstall -g grunt-init

git clone git@github.com:gruntjs/grunt-init-jquery.git c:/Users/me/.grunt-init/jquery

npm install -g grunt-cli
grunt-init jquery
npm install .

After that, running "grunt" produces the following output:

grunt-cli: The grunt command line interface. (v0.1.9)

Fatal error: Unable to find local grunt.

If you're seeing this message, either a Gruntfile wasn't found or grunt
hasn't been installed locally to your project. For more information about
installing and configuring grunt, please see the Getting Started guide:

http://gruntjs.com/getting-started

The output of npm list grunt is:

npm WARN package.json consolidate@0.9.1 No repository field.
npm WARN package.json jquery-plugin@0.0.0-ignored No repository field.
npm WARN package.json passport-local-examples-login@0.0.0 No repository field.
npm WARN package.json receiptly@0.0.1 No repository field.
npm WARN package.json cookie-signature@1.0.1 No repository field.
npm WARN package.json fresh@0.1.0 No repository field.
npm WARN package.json methods@0.0.1 No repository field.
npm WARN package.json range-parser@0.0.4 No repository field.
npm WARN package.json send@0.1.0 No repository field.
npm WARN package.json pause@0.0.1 No repository field.
npm WARN package.json policyfile@0.0.4 'repositories' (plural) Not supported.
npm WARN package.json Please pick one as the 'repository' field
npm WARN package.json eyes@0.1.8 No repository field.
npm WARN package.json bytes@0.2.0 No repository field.
npm WARN package.json dateformat@1.0.2-1.2.3 No repository field.
npm WARN package.json uid2@0.0.2 No repository field.
C:\Users\me\AppData\Roaming\npm
└─┬ grunt-init@0.2.1
  └── grunt@0.4.1

Running "npm install grunt" in the current directory gives the same error when running grunt.

Any thoughts? My understanding is that grunt-cli is meant to look for a local grunt install, but I can't work out why it can't find it.

Best Answer

I know its been 2 years since this question was asked. However if someone wants in future:

I got the exact same issue. And I got this fixed by installing grunt locally. As per grunt site,

Note that installing grunt-cli does not install the Grunt task runner! The job of the Grunt CLI is simple: run the version of Grunt which has been installed next to a Gruntfile. This allows multiple versions of Grunt to be installed on the same machine simultaneously.

So I just got it working by installing Grunt locally.

npm install grunt --save-dev

--save : adds it to your package.json.

-dev: adds it as a dev dependency.

Related Topic