2

我对此有点陌生,如果最初缺少一些信息,请见谅。

我最初通过自制软件安装了 ruby​​ 1.8.7,所以我也使用了霰弹枪。

然后我意识到,对于一个合适的 ruby​​+sinatra+shotgun 组合,我需要 ruby​​ 1.9.3,所以我安装了 rbenv,然后安装了 ruby​​ 1.9.3-p0。之后,ruby -v 显示正确的新版本,rbenv 仅列出 1.9.3 并将其标记为已安装,但在启动 shotgun 时,信息显示它仍在使用 1.8.7。操作系统是狮子。

这是相关的输出

Zsolts-iMac:test zsolt$ shotgun server.rb
== Shotgun/WEBrick on http://127.0.0.1:9393/
[2012-03-01 09:25:49] INFO  WEBrick 1.3.1
[2012-03-01 09:25:49] INFO  ruby 1.8.7 (2010-01-10) [universal-darwin11.0]
[2012-03-01 09:25:49] INFO  WEBrick::HTTPServer#start: pid=73577 port=9393

Zsolts-iMac:teste zsolt$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.3.0]

Zsolts-iMac:teste zsolt$ rbenv versions
* 1.9.3-p0 (set by /Users/zsolt/Downloads/teste/.rbenv-version)

Zsolts-iMac:teste zsolt$ rbenv version
1.9.3-p0 (set by /Users/zsolt/Downloads/teste/.rbenv-version)
4

2 回答 2

0

确保您没有安装shotgunRuby 1.8.7。如果是这种情况,shotgun二进制文件将在系统范围内可用,当您启动它时,它将加载 Ruby 1.8.7 版本。

使用 Ruby 1.9.3卸载shotgun并安装它。

于 2012-07-09T11:35:31.543 回答
0

gem 列表中缺少 shotgun,所以我安装了它(所以问题可能是我最初是通过自制软件安装的?),然后运行 ​​gem 更新,重新加载终端,现在 shotgun 正在正确使用 1.9.3。

于 2013-05-20T09:39:28.593 回答