任务 "block" 彼此
Tasks "block" each other
我在 Grunt 中发现了一个奇怪的行为,似乎两个任务互相阻塞(或类似的事情)。任务是:shell (https://github.com/sindresorhus/grunt-shell) and sass (https://github.com/gruntjs/grunt-contrib-sass).
我的(简化的)Gruntfile;
"use strict";
var path = require('path');
module.exports = function(grunt) {
require('time-grunt')(grunt);
require('load-grunt-tasks')(grunt);
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
shell: {
options: {
stdout: true,
stderr: true
},
bower: {
command: path.resolve(process.cwd() + '/node_modules/.bin/bower --allow-root install')
}
},
/* ... other tasks */
sass: {
dist: {
options: {
trace: true
},
files: {
'dist/additional.css': 'assets/stylesheets/additional.scss'
}
}
}
});
grunt.registerTask('default', [
'shell',
'sass',
]);
}
当我开始 grunt
时,我的 shell 任务已完成,但在 shell 任务中 "stops" 发出咕噜声:
Running "shell:bower" (shell) task
Running "sass:dist" (sass) task
### ctrl + c ###
Execution Time (2015-04-06 10:56:14 UTC)
loading tasks 8.9s █ 1%
shell:bower 18.6s ██ 2%
sass:dist 13m 25.2s ██████████████████████████████████████████████ 97%
Total 13m 52.7s
当我分别启动这些任务时(分别使用 grunt shell
grunt sass
)一切正常。
有什么想法吗?谢谢!
将 grunt-shell
切换为 fork grunt-shell-spawn
并同步尝试 运行 任务。
shell: {
options: {
stdout: true,
stderr: true,
async: false
},
bower: {
command: path.resolve(process.cwd() + '/node_modules/.bin/bower --allow-root install')
}
}
我在 Grunt 中发现了一个奇怪的行为,似乎两个任务互相阻塞(或类似的事情)。任务是:shell (https://github.com/sindresorhus/grunt-shell) and sass (https://github.com/gruntjs/grunt-contrib-sass).
我的(简化的)Gruntfile;
"use strict";
var path = require('path');
module.exports = function(grunt) {
require('time-grunt')(grunt);
require('load-grunt-tasks')(grunt);
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
shell: {
options: {
stdout: true,
stderr: true
},
bower: {
command: path.resolve(process.cwd() + '/node_modules/.bin/bower --allow-root install')
}
},
/* ... other tasks */
sass: {
dist: {
options: {
trace: true
},
files: {
'dist/additional.css': 'assets/stylesheets/additional.scss'
}
}
}
});
grunt.registerTask('default', [
'shell',
'sass',
]);
}
当我开始 grunt
时,我的 shell 任务已完成,但在 shell 任务中 "stops" 发出咕噜声:
Running "shell:bower" (shell) task
Running "sass:dist" (sass) task
### ctrl + c ###
Execution Time (2015-04-06 10:56:14 UTC)
loading tasks 8.9s █ 1%
shell:bower 18.6s ██ 2%
sass:dist 13m 25.2s ██████████████████████████████████████████████ 97%
Total 13m 52.7s
当我分别启动这些任务时(分别使用 grunt shell
grunt sass
)一切正常。
有什么想法吗?谢谢!
将 grunt-shell
切换为 fork grunt-shell-spawn
并同步尝试 运行 任务。
shell: {
options: {
stdout: true,
stderr: true,
async: false
},
bower: {
command: path.resolve(process.cwd() + '/node_modules/.bin/bower --allow-root install')
}
}