有人在 Mac OSX Lion 上使用 RVM 成功安装了 Rails 3.2 和 JRuby 1.6.5 吗?我计划在我的生产服务器上使用 TorqueBox 和 NGINX,并尝试在我的开发机器上模仿尽可能多的开发技术。我还没有在我的生产服务器上安装 TorqueBox,到目前为止,在我的 OSX RVM 安装中,我从与 1.9.2 和 REE 配合良好的现有 Rails 3.2 应用程序中收到了一些错误。
我遇到的问题是这样的:
ld: -rpath can only be used when targeting Mac OS X 10.5 or later collect2: ld returned 1 exit status make: * [GEM.bundle] Error 1
其中 GEM 是与 JRuby (1.6.5) 一起安装时失败的少数 Gem。
基本上我要问的是,如果我不在我的开发计算机上使用 JRuby,而坚持只使用 1.9.2,然后仅在生产计算机上使用 JRuby,那么这真的是一个问题吗?或者我应该继续尝试让它在 Lion 上工作?
--- 编辑 ---
到目前为止,这适用于 1.6.6,但 Rails 3.2 在启动后首次访问时似乎会挂起。控制台中没有错误。有什么想法吗?
最佳答案
您使用-rpath
描述的问题是http://bugs.jruby.org/6199 。这已在 JRuby 1.6.6 中修复。
不特别建议在生产中将 C 扩展与 JRuby 一起使用。它们在大多数情况下都能工作(有些仍然失败),但速度可能相当慢。请咨询https://github.com/jruby/jruby/wiki/C-Extension-Alternatives并使用 jruby-lint
看看是否可以尽可能多地删除 C 扩展。
我个人的建议是让您的开发机器尽可能接近生产机器,但不要担心细节。您需要在开发机器上保持高效,但当生产 Ruby 运行时与开发机器上的运行时完全不同时,您不希望有一种无敌的错觉。
关于ruby-on-rails - 将 JRuby 与 Rails 3.2 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9072070/