我吞下了Malloc的错误

See*_*uth 7 javascript malloc gulp

有趣的是我如何获得内存分配错误gulp,无论是错误的输出:

gulp compile:development
[15:33:51] Warning: gulp version mismatch:
[15:33:51] Global gulp is 3.8.7
[15:33:51] Local gulp is 3.8.6
[15:33:52] Using gulpfile ~/Dropbox/AisisGit/Zen/gulpfile.js
[15:33:52] Starting 'bower'...
[15:33:52] Using cwd:  ./
[15:33:52] Using bower dir:  ./bower_components
[15:33:52] Starting 'compile:jsx'...
[15:33:52] Starting 'compile:js:development'...
[15:33:52] Starting 'compile:sass:development'...
[15:33:52] Starting 'serve'...
[15:33:52] Finished 'serve' after 1.88 ms
[15:33:52] Server started on 9010 port
[15:33:52] Finished 'compile:jsx' after 376 ms
[15:33:52] Finished 'compile:js:development' after 371 ms
[15:33:52] Starting 'watch:compilejs'...
[15:33:52] Finished 'watch:compilejs' after 6.4 ?s
gulp(97412,0x7fff7ba57300) malloc: *** error for object 0x10598e5a9: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6
Run Code Online (Sandbox Code Playgroud)

现在让我们看看它自己的gulp文件.

var gulp = require('gulp');
var bower = require('gulp-bower');
var serve = require('gulp-serve');
var concat = require('gulp-concat');
var sass = require('gulp-sass');
var ugly = require('gulp-uglify');
var minifyCss = require('gulp-minify-css');
var livereload = require('gulp-livereload');
var watch = require('gulp-watch');
var react = require('gulp-react');

gulp.task('default', function() {} );

gulp.task('compile:production',
  [
    'bower',
    'compile:jsx',
    'compile:js',
    'compile:sass',
  ]
);

gulp.task('compile:development',
  [
    'bower',
    'compile:jsx',
    'compile:js:development',
    'compile:sass:development',
    'serve',
    'watch'
  ]
);

gulp.task('watch:compilejs',
  [
    'compile:jsx',
    'compile:js:development',
  ]
);

gulp.task('watch:compilecss',
  [
    'compile:sass:development'
  ]
);

gulp.task('compile:sass', function() {
  return gulp.src([
    'src/css/*.scss'
    ]).pipe(concat('style.scss'))
    .pipe(sass())
    .pipe(minifyCss())
    .pipe(gulp.dest('dist/css/'))
});

gulp.task('compile:sass:development', function() {
  return gulp.src([
    'src/css/*.scss'
    ]).pipe(concat('style.css'))
    .pipe(sass())
    .pipe(gulp.dest('compiled/css/'))
});

gulp.task('compile:jsx', function() {
  return gulp.src([
    'src/js/**/*.jsx',
  ]).pipe(react())
    .pipe(gulp.dest('src/react-compiled/'))
});

gulp.task('compile:js', function() {

  return gulp.src([
    'src/js/**/*.js',
    'src/react-compiled/**/*.js'
  ]).pipe(concat('dist.js'))
    .pipe(ugly())
    .pipe(gulp.dest('dist/js/'));

});

gulp.task('compile:js:development', function() {

  return gulp.src([
    'src/js/**/*.js',
    'src/react-compiled/**/*.js'
  ]).pipe(concat('dist.js'))
    .pipe(gulp.dest('dist/js/'));

});

gulp.task('watch', ['watch:compilejs', 'watch:compilecss'], function() {
  var server = livereload();
  gulp.watch('src/js/**/*.js', ['watch:compilejs']);
  gulp.watch('src/js/**/*.js.jsx', ['watch:compilejs']);
  gulp.watch('src/css/**/*.scss', ['watch:compilecss']);
  gulp.watch('compiled/**').on('change', function(file) {
    server.changed(file.path);
  });
});

gulp.task('bower', function() {
  return bower({dir: './bower-components', cwd: './'});
});

gulp.task('serve', serve({
  root: 'compiled/',
  port: 9010,
}));
Run Code Online (Sandbox Code Playgroud)

很明显,我要么做了一些史诗般的错误来获取内存分配错误,要么在更高层次上出现了问题.我为另一个项目使用了类似的gulp文件 - 唯一的区别是另一个项目有移动图像和字体文件.

无论如何,我的gulp文件有什么问题,或者这里有更大的东西?

小智 22

我带着同样的问题来到这个网站.我已经尝试卸载/重新安装,但它无法正常工作.

我在他们的Github页面上发现了这个问题:https: //github.com/dlmanning/gulp-sass/issues/104

看起来它可能是gulp-sass插件和空文件的问题.尝试在.scss文件中添加一行,您应该设置.它对我有用.

  • 添加评论也可以解决问题.如果你还没有任何有用的东西放在那里. (3认同)

Wil*_*ill 2

我认为您可能需要重建您的模块。

在升级到 OS X Yosemite 后,我看到了一个非常类似的错误,尽管我的问题出在 gulp-sass 上。

删除node_modulesnpm install再次运行解决了我的问题。