2015-02-24 19 views
5

Tôi có nhiệm vụ ngụm sau:Tại sao gulp bỏ thuốc lá mà không hoàn thành nhiệm vụ của tôi?

var jade = require('gulp-jade'); 
var data = require('gulp-data'); 

gulp.task('jade', function(done) { 
    return gulp.src(paths.jade) 
    .pipe(data(function(){})) 
    .pipe(jade()) 
    .pipe(gulp.dest('./www/templated/')); 
}); 

Đó là cố gắng để biên dịch tập tin ngọc này:

#{something.anything} 

Nhưng khi tôi cố gắng để chạy các nhiệm vụ, nhiệm vụ ngọc bỏ mà không xong:

$ gulp jade 
[14:39:24] Using gulpfile ~/path/gulpfile.js 
[14:39:24] Starting 'jade'... 

$ 

Và không có tệp đầu ra nào được tạo.

Tôi rõ ràng thiếu điều gì đó hiển nhiên ở đây, nhưng tôi không thể nói điều gì. Tìm kiếm 'nhiệm vụ gulp không hoàn thành' và những thứ tương tự chỉ mang lại nhiều kết quả thảo luận về các tác vụ chưa bao giờ kết thúc.

Tôi đang chạy các phiên bản mới nhất của gulp, gulp-jade và gulp-data (3.8.11, 1.0.0 và 1.2.0).

Nếu tôi xóa đường dẫn vào dữ liệu, mọi thứ sẽ hoạt động. Tôi đã thử sửa đổi các cuộc gọi đến dữ liệu, thậm chí đòi hỏi một tập tin json hợp lệ như trong ví dụ gulp-data, nhưng nó vẫn sẽ không hoạt động.

Tại sao gulp thoát mà không có tác vụ hoàn thành và không có, dường như, có lỗi gì không?

Trả lời

6

Vấn đề là, bạn gặp lỗi trong tập tin .jade đang gây ra gulp-jade để phát hiện lỗi. Lý tưởng nhất, gulp-jade sẽ ném một lỗi gulp thân thiện hơn, cung cấp cho bạn nhiều thông tin hơn chỉ là một màn hình trống nhưng, vì nó không phải là, bạn cần phải xử lý lỗi này cho mình. Bạn có thể sử dụng gulp-plumber hoặc xử lý lỗi đến trực tiếp ra khỏi đó ống đặc biệt bằng tay như sau:

var gutil = require('gulp-util'); 

gulp.task('jade', function() { 
    return gulp.src(paths.jade) 
    .pipe(jade()) 
    .on('error', gutil.log) 
    .pipe(gulp.dest('./www/templated/')); 
}); 

Nếu bạn quan tâm, sau đây là một số chi tiết trên error management problem in gulp này.

+0

Nhận xét [được chuyển đến thảo luận] (http://chat.stackoverflow.com/rooms/71619/discussion-between-code-bling-and-chris-montgomery) –

+0

tl; dr - LUÔN LUÔN XỬ LÝ L YOURI CỦA BẠN – Sgnl

Các vấn đề liên quan