rake - 在 Rails 4升级期间运行'rake rails:update:bin'时,bundler转储

  显示原文与译文双语对照的内容

我正在将现有 Rails 3.2应用程序升级到 Rails 4. 我通过rbenv使用 ruby 1.9.3 p429 ( 2013-05-15版本 40747 ) [x86_64-linux],在 Ubuntu 13.04. 我在 Rails 3.2中使用'--binstubs'选项。 在升级期间,我:

  • 已经升级 Rails 到 Rails 4.0.0
  • 使用最新的Rails 4等效gem升级了
  • 运行'配置 --delete bin && -rf bin"'

运行'rake: 更新:bin'核心转储的最多几行是:


/home/user/projects/proj_name/.bundle/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:228: [BUG] Segmentation fault


ruby 1.9.3p429 (2013-05-15 revision 40747) [x86_64-linux]



-- Control frame information -----------------------------------------------


c:0039 p:---- s:0128 b:0128 l:000127 d:000127 CFUNC :require


c:0038 p:0010 s:0124 b:0124 l:000116 d:000123 BLOCK/home/user/projects/proj_name/.bundle/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:228


c:0037 p:0071 s:0122 b:0122 l:000121 d:000121 METHOD/home/user/projects/proj_name/.bundle/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:213


/home/user/projects/proj_name/.bundle/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:228: [BUG] Segmentation fault


ruby 1.9.3p429 (2013-05-15 revision 40747) [x86_64-linux]



考虑到 gem 和错误输出的大小,我在 https://gist.github.com/grcarey/6109181 创建了一个要点,它包含和rake命令的输出。

关于解决这个问题的一些想法将被。

----------更新 ------------

使用'ruby 1.9.3 p392 ( 2013-02-22修订版 39386 ) [x86_64-linux] 运行命令会在错误输出中给出以下几行:


-- Control frame information -----------------------------------------------


c:0039 p:---- s:0128 b:0128 l:000127 d:000127 CFUNC :require


c:0038 p:0010 s:0124 b:0124 l:000116 d:000123 BLOCK/home/user/projects/proj_name/.bundle/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:228


c:0037 p:0071 s:0122 b:0122 l:000121 d:000121 METHOD/home/user/projects/proj_name/.bundle/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:213


c:0036 p:0019 s:0117 b:0117 l:000116 d:000116 METHOD/home/user/projects/proj_name/.bundle/gems/activesupport-4.0.0/lib/active_support/dependencies.rb:228


c:0035 p:0011 s:0112 b:0112 l:000111 d:000111 TOP/home/user/projects/proj_name/.bundle/gems/nokogiri-1.6.0/lib/nokogiri/xml.rb:1


c:0034 p:---- s:0110 b:0110 l:000109 d:000109 FINISH


Segmentation fault


ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-linux]



时间: 原作者:

问题解决了。

我在 Rails 3.2中使用了 bundle binstubs选项,并且在升级之前没有删除项目和bin目录的捆绑包。

在删除这些目录并运行 bundle install 之后,运行 rake rails:update:bin 解决了问题。

原作者:
...