7

I've generated an AngularJS project by using Yeoman by running

yo Angular myProjectName

And I then ran

grunt

to build the project. But then the build got abborted because of warnings:

Deans-MacBook-Air:frontend dean$ grunt
Running "newer:jshint" (newer) task

Running "newer:jshint:all" (newer) task

Running "jshint:all" (jshint) task

✔ No problems


Running "newer-postrun:jshint:all:1:/Users/dean/Desktop/myProjectName/frontend/node_modules/grunt-newer/.cache" (newer-postrun) task

Running "newer:jshint:test" (newer) task
No newer files to process.
Warning: Task "karma" not found. Use --force to continue.

Aborted due to warnings.


Execution Time (2014-07-18 07:37:37 UTC)
loading tasks                    3ms  ▇ 3%
newer:jshint                     3ms  ▇ 3%
newer:jshint:all                 6ms  ▇▇ 6%
jshint:all                      75ms  ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 79%
newer-postrun:...-newer/.cache   1ms  ▇ 1%
newer:jshint:test                5ms  ▇▇ 5%
Total 95ms
Deans-MacBook-Air:frontend dean$ 

So yeah... I tried running

npm install -g generator-karma

and then restarting my terminal after it installed but that didn't work either. I'm using a macbook running OSX 10.9.4 fyi.

  • 1
    Did you also tried npm install -g karma – Dayde Jul 18 '14 at 08:07
  • 1
    @Dayde - I tried that just now, didn't work either though. –  Jul 18 '14 at 08:11
  • Then maybe npm install -g grunt-karma – Dayde Jul 18 '14 at 08:27
  • @Dayde - Nope that didn't work either. Doh! –  Jul 18 '14 at 08:59
  • 3
    I found another thread on a very [similar issue](http://stackoverflow.com/questions/17313157/generator-angular-task-karma-not-found-when-calling-grunt-test?rq=1). If this doesn't could you please post your node & npm version and the generated package.json and Gruntfile.js? – Dayde Jul 18 '14 at 09:12
  • 2
    @Dayde - holy crap it worked! Thanks! (Running 'sudo npm install grunt-karma --save-dev' that is...) –  Jul 18 '14 at 09:19
  • 1
    You're welcome :-) I didn't think the save-dev option would have change something in the first place but after reading a bit more carefully it makes sense : it forces grunt to register the task because it now appears in the file package.json. – Dayde Jul 18 '14 at 10:25
  • Woudlnt a simple `npm install` have been enough? I´m not sure right now if yeoman already installs all dependencies, but i dont think so. But if generator-karma was not within the package.json before, then its a fault of the used generator... – David Losert Jul 18 '14 at 11:50

2 Answers2

6
sudo npm install grunt-karma --save-dev
Paul
  • 1,188
  • 1
  • 11
  • 21
1

The only solution for me that work is:

sudo npm install grunt-karma karma karma-phantomjs-launcher karma-jasmine jasmine-core phantomjs-prebuilt --save-dev

grunt test or: grunt serve, it's work !

Kys3r
  • 223
  • 3
  • 6