sil*_*mer 46 node.js mean-stack
当我使用grunt命令时,它显示以下错误:
$ grunt
Loading "Gruntfile.js" tasks...ERROR
>> Error: Cannot find module 'load-grunt-tasks'
Warning: Task "default" not found. Use --force to continue.
Aborted due to warnings.
Execution Time (2015-02-07 18:05:42 UTC)
loading tasks 339ms ??????????????????????????????????????????????? 99%
Total 344ms
Run Code Online (Sandbox Code Playgroud)
我已经尝试过了 - npm install,npm update命令.如果有人可以帮助我,那将是很棒的.谢谢!
添加Gruntfile.js的内容
'use strict';
var paths = {
js: ['*.js', 'test/**/*.js', '!test/coverage/**', '!bower_components/**', 'packages/**/*.js', '!packages/**/node_modules/**', '!packages/contrib/**/*.js', '!packages/contrib/**/node_modules/**'],
html: ['packages/**/public/**/views/**', 'packages/**/server/views/**'],
css: ['!bower_components/**', 'packages/**/public/**/css/*.css', '!packages/contrib/**/public/**/css/*.css']
};
module.exports = function(grunt) {
if (process.env.NODE_ENV !== 'production') {
require('time-grunt')(grunt);
}
// Project Configuration
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
assets: grunt.file.readJSON('config/assets.json'),
clean: ['bower_components/build'],
watch: {
js: {
files: paths.js,
tasks: ['jshint'],
options: {
livereload: true
}
},
html: {
files: paths.html,
options: {
livereload: true,
interval: 500
}
},
css: {
files: paths.css,
tasks: ['csslint'],
options: {
livereload: true
}
}
},
jshint: {
all: {
src: paths.js,
options: {
jshintrc: true
}
}
},
uglify: {
core: {
options: {
mangle: false
},
files: '<%= assets.core.js %>'
}
},
csslint: {
options: {
csslintrc: '.csslintrc'
},
src: paths.css
},
cssmin: {
core: {
files: '<%= assets.core.css %>'
}
},
nodemon: {
dev: {
script: 'server.js',
options: {
args: [],
ignore: ['node_modules/**'],
ext: 'js,html',
nodeArgs: ['--debug'],
delayTime: 1,
cwd: __dirname
}
}
},
concurrent: {
tasks: ['nodemon', 'watch'],
options: {
logConcurrentOutput: true
}
},
mochaTest: {
options: {
reporter: 'spec',
require: [
'server.js',
function() {
require('meanio/lib/core_modules/module/util').preload(__dirname + '/packages/**/server', 'model');
}
]
},
src: ['packages/**/server/tests/**/*.js']
},
env: {
test: {
NODE_ENV: 'test'
}
},
karma: {
unit: {
configFile: 'karma.conf.js'
}
}
});
//Load NPM tasks
require('load-grunt-tasks')(grunt);
/**
* Default Task
*/
grunt.hook.push('clean', -9999);
grunt.hook.push('concurrent', 9999);
if (process.env.NODE_ENV === 'production') {
grunt.hook.push('cssmin', 100);
grunt.hook.push('uglify', 200);
} else {
grunt.hook.push('jshint', -200);
grunt.hook.push('csslint', 100);
}
//Default task.
grunt.registerTask('default', ['hook']);
//Test task.
grunt.registerTask('test', ['env:test', 'mochaTest', 'karma:unit']);
// For Heroku users only.
// Docs: https://github.com/linnovate/mean/wiki/Deploying-on-Heroku
grunt.registerTask('heroku:production', ['cssmin', 'uglify']);
};
Run Code Online (Sandbox Code Playgroud)
Rol*_*dák 52
试试跑步:
$ npm install
Run Code Online (Sandbox Code Playgroud)
在那之后,如果你运行它并且错误仍然存在或者还有另一个,那么你可能没有安装ruby,指南针或两者:)
Dav*_*vis 40
我有同样的问题,我的问题是在我的package.json中我没有实际安装所需的NPM包,它没有像以前想象的那样自动安装.试着做
npm install --save-dev load-grunt-tasks
Run Code Online (Sandbox Code Playgroud)
如果这不起作用,您也可以提供package.json文件,以便我们可以获得更多信息.
我遇到了与您相同的问题,似乎 gruntfile 缺少必需的初始化步骤。
通过改变这个:
require('load-grunt-tasks')(grunt);
/**
* Default Task
*/
grunt.hook.push('clean', -9999);
Run Code Online (Sandbox Code Playgroud)
对此:
require('load-grunt-tasks')(grunt);
grunt.loadNpmTasks('grunt-hook');
/**
* Default Task
*/
grunt.hook.push('clean', -9999);
Run Code Online (Sandbox Code Playgroud)
添加 grunt.loadNpmTasks 调用,我能够解决这个问题。问题是,现在我得到了
未找到任务“clean”。使用 --force 继续。
查看 grunt 文件的其余部分,我没有看到清理的注册任务。如果我查看mean.io 文档,看起来构建失败了。也许这就是原因的一部分?我想我向mean-cli询问了gulp版本,这可能就是原因。我将删除并从顶部取出它:)
| 归档时间: |
|
| 查看次数: |
56174 次 |
| 最近记录: |