【问题标题】:Gulp: Segmentation Fault 11 after Node 4.0 updateGulp:节点 4.0 更新后的分段错误 11
【发布时间】:2015-09-09 02:34:54
【问题描述】:

我刚刚更新到节点 4。

当我运行 Gulp 时,我看到:

分段错误:11

我的包括:

var gulp = require('gulp');

var jscs = require('gulp-jscs');
var concat = require('gulp-concat');
var uglify = require('gulp-uglify');
var rename = require('gulp-rename');
var responsive = require('gulp-responsive');
var imagemin = require('gulp-imagemin');
var jpegtran = require('imagemin-jpegtran');
var rollup = require('gulp-rollup');
var webp = require('gulp-webp');
var spritesmith = require('gulp.spritesmith');

我无法运行调试任务。详细不会吐出任何额外内容。

想法?

【问题讨论】:

  • 删除您的node_modules 目录,然后运行npm cache clean && npm install。最后npm uninstall -g gulp && npm install -g gulp.

标签: node.js gulp fault


【解决方案1】:

我也更新到 Node 4.0 并且在我的节点服务器上也遇到了分段错误。我只是删除了我的node_modules目录并重新运行npm install,就可以了。

所以我怀疑是因为新版本的npm无法加载旧npm安装的一些模块---但只是对于一些模块,在我的其他服务器上更新后直接运行npm start是可以的。这个我还没有深入。

作为一种快速修复,我认为您可以在自己的依赖项上尝试此操作。

【讨论】:

    【解决方案2】:

    删除node_modules 然后运行npm install 的建议很好。它会起作用的。不过,稍微高效一点的方法可能是只运行npm rebuild,而不删除node_modules 或运行npm install。它将为您安装的新版本 Node/V8 重新编译原生模块,而无需再次下载所有文件。

    但如果一切都失败了:

    • 删除你的 node_modules 目录
    • npm cache clean && npm install
    • npm uninstall -g gulp && npm install -g gulp

    【讨论】:

    • npm rebuild 步骤并没有为我解决问题。您的其他建议与之前的建议重复。
    • 支持你@Trott,因为虽然它部分重复了其他人,但它是一个非常彻底的答案,有可能的替代方案。来自我的 +1。
    • 哦,谢谢。冒着听起来很生气的风险,整个复制另一个答案的问题无论如何都会被误导。我应该复制的答案恰好实际上复制了the comment I had already made on the original post。这完全没问题,不管是有意还是无意。关键是要制作最有用的答案,而不是最快或最原始的答案。
    • 这对我有用!我在使用 laravel-elixir 时遇到了分段错误 [1] 尝试了很多其他的方法,但这很有效。谢谢@Trott
    • 我只需要运行 npm cache clean 就解决了我的问题
    【解决方案3】:

    我最近遇到了这个问题,并尝试了上面显示的步骤:

    $ npm cache clean && npm install
    

    但仍然有问题。即使在删除所有文件并运行之后

    $ npm install
    

    所以,做了更多的根,发现有一个问题,即一些节点模块有一个以 .info 结尾的文件,这导致 Drupal(我在其中运行这个框架)尝试读取 .info文件作为theme.info 文件。重命名这些文件(使用不同的结尾)解决了这个问题。

    虽然我的问题是 Drupal 特有的,但我可以想象类似的问题也会出现在其他框架上。

    【讨论】:

      【解决方案4】:

      我的问题是我安装了 Node v5.9.0。所以我降级到 v4.4.1-LTS 并终于让它再次工作:

      使用自制软件:

      $ brew tap homebrew/versions
      $ brew install homebrew/versions/node4-lts
      

      然后:

      $ npm rebuild
      

      【讨论】:

        【解决方案5】:

        我今天又遇到了这个错误。经过大约一个小时的搜索,重新安装了整个 node.js,所有插件和 gulp 并清理了 NPM 的缓存,但没有解决。我试图在我的 SASS 文件中返回几个步骤。

        并修复它。但这不是代码中的一些错误或变量,而是我在我的文件中做了这样的声明:

        a
           transition: all 0.5s ease-in-out
        
           &:hover, &:focus
               transition: all 0.5s ease-in-out
        

        试图一次又一次地发生错误。真的不知道为什么。当我使用嵌套在一个类或另一个标签中的这个语句时,它工作正常。

        【讨论】:

        • 如果那是你的处理器,你可能想在 Gitub 上使用 node-sass 提交问题错误。
        • 通过将 gulp-sass 依赖升级到最新版本修复了这个问题。
        【解决方案6】:

        请从项目中删除您的 node_modules 并执行npm install

        【讨论】:

          猜你喜欢
          • 2019-11-25
          • 2013-11-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-10-04
          • 1970-01-01
          相关资源
          最近更新 更多