2016-04-06 16 views
0

Şu anda SASS'ı (aynı zamanda Gulp Watch'ı kullanıyorum) derleme ve küçültmeyi içeren çeşitli görevleri yürütmek için Gulp kullanıyorum. Ben bir dosyaya (özellikle app.scss) değişiklik yapmak sorun yaşıyorum, Bu oldukça uninformative hata tükürür:Gulp/Düğüm - SASS Compile ile ilgili hatalar

"C:\Program Files (x86)\JetBrains\PhpStorm 2016.1\bin\runnerw.exe" "C:\Program Files\nodejs\node.exe" C:\Users\Matthew\PhpstormProjects\mattrick\node_modules\gulp\bin\gulp.js --color --gulpfile c:\Users\Matthew\PhpstormProjects\website\gulpfile.js watch 
[20:48:35] Using gulpfile c:\Users\Matthew\PhpstormProjects\website\gulpfile.js 
[20:48:35] Starting 'watch'... 
[20:48:35] Finished 'watch' after 7.94 ms 
events.js:85 
     throw er; // Unhandled 'error' event 
      ^
Error: ENOENT, stat 'c:\Users\Matthew\PhpstormProjects\website\resources\assets\sass\app.scss___jb_tmp___' 
    at Error (native) 

Process finished with exit code 1 

Ben bu hataya neden ne gerçekten emin değilim ve Googling gelen Birçok farklı durumda olduğu görülüyor. Ne yaptığımdan çok emin değilim. Benim gulpfile aşağıda:

var gulp = require('gulp'); 
var watch = require('gulp-watch'); 
var batch = require('gulp-batch'); 
var sass = require('gulp-sass'); 
var concat = require('gulp-concat'); 
var uglify = require('gulp-uglify'); 
var cleanCSS = require('gulp-clean-css'); 
var plumber = require('gulp-plumber'); 
var del = require('del'); 

var config = { 
    bowerDir: './bower_components/', 
    publicDir: './public', 
}; 

//Build Tasks 
gulp.task('build', ['clean'], function() { 
    gulp.start(['css', 'fonts', 'js']); 
}); 

//Clean Dir 
gulp.task('clean', function() { 
    return del([config.publicDir + "/css", config.publicDir + "/fonts", config.publicDir + "/js"]); 
}); 

//CSS Concat + Minification 
gulp.task('css', function() { 
    return gulp.src(
     [ 
      config.bowerDir + 'bootstrap-sass/assets/stylesheets', 
      config.bowerDir + 'fontawesome/scss', 
      './resources/assets/sass/app.scss' 
     ]) 
     .pipe(plumber()) 
     .pipe(sass({ 
      errLogToConsole: true 
     })) 
     .pipe(cleanCSS({compatibility: 'ie8'})) 
     .pipe(gulp.dest(config.publicDir + '/css')); 
}); 

//Font Awesome 
gulp.task('fonts', function() { 
    return gulp.src(config.bowerDir + '/fontawesome/fonts/**.*') 
     .pipe(plumber()) 
     .pipe(gulp.dest(config.publicDir + '/fonts')); 
}); 

//JavaScript Concat + Uglify 
gulp.task('js', function() { 
    return gulp.src(
     [ 
      config.bowerDir + '/jquery/dist/jquery.min.js', 
      config.bowerDir + '/bootstrap-sass/assets/javascripts/bootstrap.min.js' 
     ]) 
     .pipe(plumber()) 
     .pipe(concat('app.js')) 
     .pipe(uglify()) 
     .pipe(gulp.dest(config.publicDir + "/js")); 
}); 

//Watch Task 
gulp.task('watch', function() { 
    watch(['./resources/assets/sass/*', config.bowerDir + '/bootstrap-sass/assets/stylesheets/**'], batch(function(events, done) { 
     gulp.start('build', done); 
    })); 
}); 

//Default Task 
gulp.task('default', ['build']); 

Sağladığınız herhangi bir yardımı gerçekten takdir ediyorum. Teşekkür ederim!

cevap

3

__jb_tmp__ suffix, PhpStorm gibi JetBrains uygulamaları tarafından oluşturulan bir geçici dosyayı belirtir. Bir dosyayı kaydederken, dosya içeriği ilk önce renamed olan bir geçici dosyaya yazılır. Zaman gulp.watch() zaten gitti temp dosyası stat() çalışır.

adresinin gulp.watch() topak sınırlayıcı deneyin: Yalnızca SUKDÖ'nün/SCSS dosyalarına

watch(['./resources/assets/sass/*', 

:

watch(['./resources/assets/sass/*.{sass,scss}', 
+0

çok teşekkür ederiz! PhpStorm'un temp dosyalarını böyle yapmasının farkında değildim. – mattrick