Nodejs v0.10.26でLion 10.9.2を実行しています
私は、sassファイルの自動コンパイルと、うなり声を伴うライブリロードをセットアップしますが、複雑なことはありません...
grunt watch
次のエラーが表示されます
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
util.js:35
var str = String(f).replace(formatRegExp, function(x) {
^
RangeError: Maximum call stack size exceeded
これがGruntfile.jsです
module.exports = function(grunt) {
// Project configuration.
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
sass: {
dist: {
files: {
'assets/css/styles.css': 'assets/sass/styles.scss'
}
}
},
watch: {
all: {
files: 'index.html', // Change this if you are not watching index.html
options: {
livereload: true // Set livereload to trigger a reload upon change
}
},
css: {
files: [ 'assets/sass/**/*.scss' ],
tasks: [ 'sass' ],
options: {
spawn: false
}
},
options: {
livereload: true // Set livereload to trigger a reload upon change
}
}
});
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-sass');
grunt.registerTask('watch', [ 'watch']);
grunt.registerTask('default', [ 'sass', 'watch' ]);
};
ここにpackage.jsonがあります
{
"name": "application",
"version": "0.0.1",
"private": true,
"devDependencies": {
"grunt": "~0.4.2",
"grunt-contrib-watch": "~0.5.3",
"grunt-contrib-sass": "~0.7.3"
}
}
最終的に、SASSで発生していた同様の問題を見つけました。私が使っていた
grunt.registerTask('sass', [ 'sass']);
トリックは、Gruntが名前の繰り返しを好まないように見えることでした。に切り替えたとき
grunt.registerTask('styles', [ 'sass']);
すべてが正常に機能しました。
この問題があっただけです。 grunt.registerTask('watch', [ 'watch']);
を削除して解決しました
コマンド:grunt serverによって引き起こされる同様のエラー「Recursive process.nextTickが検出されました」を修正しました。
ソリューション?代わりにSudo grunt serveを使用してください
あなたはこれを試すことができ、Yeoman 1.3.3とUbuntu 14.04で作業して問題を修正しました Grunt watch error-Waiting ... Fatal error:watch ENOSPC
代替ソリューション:空のファイル引数については、ウォッチを確認してください。
これは私のgruntfile
の抜粋です
watch: {
all: {
options:{
livereload: true
},
files: ['src/scss/*.scss', 'src/foo.html',, 'src/bar.html'],
tasks: ['default']
}
}
私の場合、上記の空の引数を使用して、元のポスターのエラーをオンデマンドで再作成できました。
Gruntをインストールしようとしてもエラーが発生していました。 npm dedupeを実行すると、ここで答えたように私の問題が解決しました: Grunt watch error-Waiting ... Fatal error:watch ENOSPC