Gulp注入:分段错误

3
我使用的是Manjaro Linux系统,并从官方软件库安装了Node.js和npm。
Node.js版本为v6.2.1,npm版本为3.9.5。
gulp.task('inject', ['scripts', 'styles'], function () {
        var injectStyles = gulp.src([
        path.join(conf.paths.tmp, '/serve/app/**/*.css'),
        path.join('!' + conf.paths.tmp, '/serve/app/vendor.css')
        ], { read: false });
  
        var injectScripts = gulp.src([
            path.join(conf.paths.src, '/app/**/*.module.js'),
            path.join(conf.paths.src, '/app/**/*.js'),
            path.join('!' + conf.paths.src, '/app/**/*.spec.js'),
            path.join('!' + conf.paths.src, '/app/**/*.mock.js'),
        ])
        .pipe($.angularFilesort()).on('error', conf.errorHandler('AngularFilesort'));
        var injectOptions = {
            ignorePath: [conf.paths.src, path.join(conf.paths.tmp, '/serve')],
            addRootSlash: false
        };

 return gulp.src(path.join(conf.paths.src, '/*.html'))
        .pipe($.inject(injectStyles, injectOptions))
        .pipe($.inject(injectScripts, injectOptions))
        .pipe(wiredep(_.extend({}, conf.wiredep)))
        .pipe(gulp.dest(path.join(conf.paths.tmp, '/serve')));
 });

当我运行时:
$ gulp serve

它显示给我:
[21:36:37] Using gulpfile /home/jics/Documents/Proyect/gulpfile.js
[21:36:37] Starting 'config'...
[21:36:37] Starting 'styles'...
[21:36:37] Finished 'config' after 236 ms
[21:36:37] Starting 'scripts'...
[21:36:37] gulp-inject 30 files into index.scss.
[21:36:39] Finished 'styles' after 2.36 s
[21:36:40] all files 211.97 kB
[21:36:40] Finished 'scripts' after 2.84 s
[21:36:40] Starting 'inject'...
[21:36:40] gulp-inject 1 files into index.html.
Segmentation fault

我的 coredumctl 显示了这个信息:
          PID: 29909 (gulp)
          UID: 1000 (jics)
          GID: 1000 (jics)
       Signal: 11 (SEGV)
    Timestamp: lun 2016-06-13 18:03:49 CLT (3h 37min ago)
 Command Line: gulp                    
   Executable: /usr/bin/node
Control Group: /user.slice/user-1000.slice/session-c2.scope
         Unit: session-c2.scope
        Slice: user-1000.slice
      Session: c2
    Owner UID: 1000 (jics)
      Boot ID: 857cb1e6f9134beb91d172fc85f05f36
   Machine ID: 50f47fe8f80b4f92829b61933e8b309e
     Hostname: jics-pc
     Coredump: /var/lib/systemd/coredump/core.gulp.1000.857cb1e6f9134beb91d172fc85f05f36.29909.1465
   Message: Process 29909 (gulp) of user 1000 dumped core.

            Stack trace of thread 29909:
            #0  0x00002080c7ca188c n/a (n/a)

我能够成功运行 `gulp serve` 的唯一方法是从配置文件中删除以下行:.pipe($.inject(injectScripts, injectOptions))

抱歉打断帖子.. 但我想知道在出现此错误之前是否使用过Angular File Saver服务? - Shady Atef
不,我没有使用它。 - jics
1个回答

5

我确实使用了 n 进行了操作。

$ sudo npm install -g n
$ sudo n stable

install : node-v6.2.1
mkdir : /usr/local/n/versions/node/6.2.1
fetch : https://nodejs.org/dist/v6.2.1/node-v6.2.1-linux-x64.tar.gz 
######################################################################## 100,0%
installed : v6.2.1

最后我执行了$ gulp serve,运行完美。

非常感谢 @Glats。它也对我有用!! - nithin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接