Ich habe die folgenden Schluckaufgaben in meinem Projekt eingerichtet. Alles war gut, bis ich die dist:images
Aufgaben hinzufügte.Gulp beschwert sich über das Verzeichnis, das bereits vorhanden ist, wenn ich saubere Aufgaben ausführen und bereitstellen muss
Jetzt kann jeder andere ausgeführt werden, wenn die dist:watch
Aufgabe mit bewirkt, dass der Fehler
Error: EEXIST: file already exists, mkdir '/Users/toby/src/my-project/dist/imgs'
Ich kann sehen, dass die saubere ihre Aufgabe erfüllen, bevor die anderen beginnen. Ich habe auch getestet, dass keine andere Aufgabe diesen Ordner erstellt ... also, wie kommt die dist:images
Aufgabe ist dieses Verzeichnis erstellen und beschweren sich darüber!?!
Hier ist der Code ...
/**
* dist:clean
*/
gulp.task('dist:clean', function() {
del(config.distDir + "/**/*");
});
gulp.task('dist:html', ['dist:clean'], function() {
return gulp.src(config.htmlFiles)
.pipe(gulp.dest(config.distDir));
});
gulp.task('dist:images', ['dist:clean'], function() {
return gulp.src(config.imgFiles, {base: "web"})
.pipe(gulp.dest(config.distDir));
});
gulp.task('dist:styles', ['dist:clean'], function() {
console.log(config.lessMainFile);
return gulp.src(config.lessMainFile)
.pipe(debug())
.pipe(less().on('error', function (err) {
console.log(err);
}))
.pipe(cssmin().on('error', function (err) {
console.log(err);
}))
.pipe(rename({suffix: '.min'}))
.pipe(gulp.dest(config.distDir + "/css"));
});
gulp.task('dist:src', ['dist:clean', 'src']);
/**
* dist:browserify
*/
gulp.task("dist:browserify", ['dist:src'], function() {
return browserify({
basedir : '.',
debug : true,
entries : [config.buildJsDir + '/src/main.js'],
cache : {},
packageCache: {}
})
.bundle()
.pipe(source('js/main.js'))
.pipe(gulp.dest(config.distDir));
});
gulp.task('dist', ['dist:html', 'dist:images', 'dist:styles', 'dist:src', 'dist:browserify']);
gulp.task('dist:watch', ['dist'], function() {
return gulp.watch(config.srcAllTypeScript.concat(config.webDir + "/**/*"), ['dist']);
});
Vielen Dank für Ihre Hilfe im Voraus
Versuchen 'Rückkehr del (config.distDir + "/ **/*")' oder 'del.sync (config.distDir + "/ **/*")' in Ihrem 'dist: clean' Aufgabe. –