5

我刚从 Heroku 切换到 Amazon Web Services。以前,我使用带有 Ruby 的命令提示符(从我的 Windows PC)运行我所有的 Rails 命令行命令。但是,在我登录到我的 Amazon Linux EC2 实例,然后进入我的应用程序目录后,我收到此错误:

/usr/bin/rails:9:in `require': no such file to load -- rubygems (LoadError)
    from /usr/bin/rails:9

当我尝试运行任何命令时,如rails console.

我查看了这个问题,但似乎多个 Ruby 库不适用于我,因为

which -a ruby

只产生一个位置:

/usr/bin/ruby

此外,这个问题似乎没有帮助,因为我没有。当我尝试输入

rvm use 1.9.3

我收到这条消息:

-bash: rvm: command not found

这是我第一次看到 Linux 环境,所以任何帮助将不胜感激。谢谢!

4

3 回答 3

1

我遇到了同样的问题,并带有相同的错误消息。从我的 EC2 实例中,我注意到我的 ruby​​ 版本是 1.8 (ruby -v)。我重新启动了 EC2 实例,这导致 Elastic Beanstalk 启动了一个新的 EC2 实例并终止了旧的实例。新实例正在运行 1.9.3,我变得畅通无阻。我讨厌神奇的解决方案,但是随着旧实例的终止,我无法进行更多的分类。希望这可以帮助。

于 2013-05-14T16:49:36.090 回答
0
-bash: rvm: command not found

这清楚地表明您的机器上没有安装 rvm,或者如果安装了您没有正确设置路径。

检查路径

有时会有 gem 版本控制指向错误的版本。

这曾经发生在我身上——

漠视!sudo bundle install是捆绑2.3.8而不是3.0.0.beta3. 通过在我的 Gemfile 中指定版本来修复它。

为确保编译顺利进行,请在终端会话中向后滚动并查看应安装的必备软件包列表(最好剪切并粘贴所有名称,以免输入错误)。

sudo apt-get install build-essential openssl libreadline6 libreadline6-dev zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev autoconf libc6-dev libncurses5-dev automake libtool bison subversion

现在您可以使用 rvm 下载、编译和安装 Ruby。

1 rvm install 1.9.3

2 rvm use 1.9.3 --default

猜猜这更多的是与 RVM 相关的问题以及与 osx 的系统 ruby​​ 的一些奇怪的联系?(我在用户级别安装了 RVM)

于 2013-02-15T09:02:51.507 回答
0

我用过 gem install bundler。然后运行rvm install正常

于 2014-01-22T10:00:06.540 回答