2016-11-22 8 views
0

私は、複数のストリームをマージして結果ストリームを返す前のタスクに依存するタスクを持っています。それに依存する仕事は決して走っていないようです。前提条件のGulpタスクが開始されない

これは私の依存関係で次のようにそれらを使用しています

var gulp = require('gulp'); 
var concat = require('gulp-concat'); 
var sourcemaps = require('gulp-sourcemaps'); 
var less = require('gulp-less'); 
var minifyCss = require('gulp-minify-css'); 
var merge = require('gulp-merge'); 
var cached = require('gulp-cached'); 

gulp.task('css:minify', function() { 
    var bootstrapLess = gulp.src(['plugins/bootstrap/less/bootstrap.less']) 
     .pipe(cached('bootstrap less')) 
     .pipe(less()) 
     .pipe(gulp.dest('plugins/bootstrap/less/')); 

    var aceLess = gulp.src(['plugins/ace-admin/less/ace.less']) 
     .pipe(cached('ace less')) 
     .pipe(less()) 
     .pipe(gulp.dest('plugins/ace-admin/less/')); 

    var ace = gulp.src(files.css.ace) 
     .pipe(cached('ace min')) 
     .pipe(sourcemaps.init()) 
     .pipe(minifyCss()) 
     .pipe(concat('aes.ace.min.css')) 
     .pipe(sourcemaps.write('./')) 
     .pipe(gulp.dest('Content/')); 

    var css = gulp.src(files.css.all) 
     .pipe(cached('aes.min')) 
     .pipe(sourcemaps.init()) 
     .pipe(minifyCss()) 
     .pipe(concat('aes.all.min.css')) 
     .pipe(sourcemaps.write('./')) 
     .pipe(gulp.dest('Content/')); 

    console.log('css minification in progress'); 

    return merge(bootstrapLess, aceLess, ace, css); 
});  

タスクは次のとおりです。

gulp.task('test', ['css:minify'], function() { 
    console.log('testing'); 
}); 

は、私は次のような出力が得られます。

[14:32:53] Starting 'css:minify'... 
css minification in progress 
Process terminated with code 0. 

css:minifyタスクが報告したことがありません完了し、testタスクは決してコンソールに何も記録しません。依存関係はストリームを返し、ストリームが終了するとtestタスクが実行されると私は期待していました。これが起こらないように私は間違って何をしましたか?

編集:(私はすべてが正常に動作し、これらの行をコメントアウトしている場合ので)、それは防ぎ、なぜ私はまだ見ることができない問題がcss:minifyタスクのacecssセクション内concatているようです仕事からの仕事。

+0

コードの半分がちょうど 'doStuff'と' doMoreStuff'であるとき、これに答える方法はありません。 –

+0

興味深いことに、私は自分のテスト課題をどのように設定するのか、何か誤解しているに違いないと思った。例の詳細を記入します。ありがとうございます。 – Tim

答えて

0

問題はgulp-mergeと関係があることが判明しました。代わりにmerge-streamを使用するように変更したところ、すべてが期待どおりに機能しました。

関連する問題