2011-08-19 62 views

回答

10

检查是否有宝石安装gem list如果没有,照常安装gem install whatever或者如果你想要一个特定版本gem install whatever -v 1.2.3或者,如果你在你的项目(即Rails)的有捆绑,它只是bundle install

如果你有所有的宝石,那么这可能是一个本地文件,你可能来自Ruby版本< 1.9,你需要修复你的$LOAD_PATH(这将取决于太多因素,我可以在这里解释),或指定完整你想要的文件的路径File.dirname(__FILE__) + '/myapp'

否则,你需要给更多信息,比如你曾经运行过的版本,myapp是什么,以及它与你的文件相关的地方。

+0

嗨,我认为它的第二点,我的宝石列表是好,我来自红宝石在mac osx 1.8.7上安装rvm到我的主驱动器,然后rvm install ruby​​ 1.9.2。我如何修复我的加载路径,是在我的个人资料或文件中给出的错误是custom_require? – user901790

+0

您的加载路径对于每个应用程序都会有所不同。 Rubygems已经为您的宝石管理加载路径,所以我会假设myapp是一个本地文件,您希望相对于它所需的文件。在这种情况下,您可以执行'require File.dirname(__ FILE__)+'/ myapp'(假设它们在同一个目录中)。或者,您可以将应用程序的根添加到加载路径,如'$ LOAD_PATH.unshift File.dirname(__ FILE __)'(假设此文件位于根目录并且是第一个文件加载的),然后需要所有文件相对于根。 –

+0

对不起约书亚,我是新来的osx,我在哪里添加文件路径?让我给你一些上下文,mongoblog是项目,它里面运行rackup config.ru启动myapp.rb。我将require file.dirname放在config.ru文件或myapp.rb中吗? – user901790

0

在我的情况下,这是rvm问题,我使用rvm 1.9时,我将其更改为1.8,迁移工作。

rvm使用1.8

0

在我的情况下,我转换到Cygwin64。 Cygwin目录名称已更改,Ruby升级到1.9。解决Cygwin目录名称后,第二个解决方案工作。或者说,至少有过去这个问题:

需要File.dirname(FILE)+“/myapp.rb”

相关问题