【问题标题】:Rake task breaks my Ruby... Bad Rake TaskRake 任务破坏了我的 Ruby... 糟糕的 Rake 任务
【发布时间】:2012-07-26 16:15:57
【问题描述】:

我正在尝试在本地运行 rake 任务,但遇到了一个奇怪的错误。

$ rake alert_notification  --trace
** Invoke alert_notification (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute alert_notification
/Users/bendowney/.rvm/gems/ruby-1.9.3-p194@global/bin/rake(65399,0x7fff73799960) malloc: *** error for object 0x8: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6

奇怪的是,我没有使用给定的 gemset (@globaL)。当我跑 $ rvm gemset 列表

它显示了正确的宝石组。

据我所知,这不会影响我的 rails 应用程序的其余部分的工作方式。虽然我不完全确定。

关于如何解决这个问题的建议?

【问题讨论】:

  • rails 目录中是否有 .rvmrc 文件?
  • 应用根目录下有个.rvmrc文件

标签: ruby-on-rails ruby rake rvm


【解决方案1】:

只是猜测,看起来你在 OSX 上使用 clang 编译了 ruby​​,有两种方法可以为 ruby​​ 获得正确的编译器:osx-gcc-installer 和:

rvm get head
rvm requirements # read the part on homebrew apple gcc42

在获得正确的编译器后,您需要重新安装 ruby​​:

rvm reinstall 1.9.3

至于 @global gemset - 它被给定 ruby​​ 中的所有 gemset 继承,包括默认 gemset(没有任何 @...)。

【讨论】:

    【解决方案2】:

    在我们编写 rake 任务的过程中,这个问题已经完全消失了。所以我猜这篇文章的答案是“编写有效的 rake 任务”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-15
      • 2010-10-09
      • 2017-10-04
      • 2017-06-21
      • 2013-03-04
      • 2011-02-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多