javascript - 我用 gulp 收到 Malloc 错误

标签 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

现在让我们看看它自己的 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,
}));

很明显,我要么犯了一些严重的错误导致内存分配错误,要么在更大的层面上出了问题。我在另一个项目中使用了类似的 gulp 文件 - 唯一的区别是另一个有移动图像和字体文件。

任何方式,我的 gulp 文件有问题还是这里有更大的东西?

最佳答案

我带着同样的问题来到这个网站。我试过卸载/重新安装,但没有用。

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

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

关于javascript - 我用 gulp 收到 Malloc 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26537928/

相关文章:

javascript - AngularJS 绑定(bind)似乎不起作用

c - 指针和动态内存

c - 安全读取未知长度的字符串

c - C中的这些数组声明有什么区别?

javascript - 如何将公共(public)文件夹从src复制到dist文件夹

javascript - 从 server.js 中删除 browsersync 以进行 gulp

javascript - Gulp 测试找不到模块

javascript - NodeJs Express - 如何返回 HTTP ERROR CODE (400,401,500) 和 JSON OBJECT

Javascript match() 和无效量词

javascript - JavaScript 中是否可以像 C# 中那样使用 @"text"将多行字符串分配给变量?