私たちのgulpビルドは、bowerと一緒にインストールされたライブラリの束を取り、複数のディレクトリに分散したすべてのコードと連結します。ここでは次のようになります。ファイルが見つからない場合にGulp.srcを失敗させるには?
var jsFiles = [
sourcePath + '/config/config.js',
sourcePath + '/vendor/jquery/dist/jquery.js',
sourcePath + '/vendor/js-cookie/src/js.cookie.js',
sourcePath + '/vendor/modernizr/modernizr.js',
sourcePath + '/vendor/lodash/lodash.js',
sourcePath + '/vendor/picturefill/dist/picturefill.min.js',
sourcePath + '/templates/**/*.js',
sourcePath + '/pages/**/*.js'
],
gulp.task('build:js', ['jscs'], function() {
return gulp.src(jsFiles)
.pipe(concat('scripts.js'))
.pipe(gulpif(isProd, uglify()))
.pipe(gulp.dest(outputPath + '/webresources/js'));
});
私たちの問題は、誰かが新しいライブラリを追加するたびに、彼らは新しいコンポーネントを取得するためにbower install
を実行していない場合は、他の開発者は、問題が発生したということです。 scripts.js
は名前付きファイルであってもglobの1つが空を返すのに気にならないので、それらを除いて構築されます。
これはどのように解決する必要がありますか?グロブがゼロの結果を返す場合、エラーをスローする方法はありますか?
こんにちは、単一の文字列パラメータやファイルを無視する感嘆符の構文を使用する可能性など、いくつかの機能が不足していました。私はあなたにプルリクエストを送ってきました。 – schlingel