0

我有 Sinatra 和 Chartkick 在 Windows 开发机器上工作。现在我想将它移动到服务器上,以便其他人可以轻松访问它。

以下是有关我的服务器的一些相关详细信息:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 12.04.2 LTS
Release:        12.04
Codename:       precise
$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux]
$ gem -v
1.8.15
$ gem list --local

*** LOCAL GEMS ***

chartkick (1.2.4)
rack (1.5.2)
rack-protection (1.5.3)
sinatra (1.4.5)
tilt (1.4.1)
$ cat example.rb
require 'rubygems'
require 'sinatra'
#require 'chartkick'
get '/' do
  "Hello World"
end
$ ruby example.rb
== Sinatra/1.2.6 has taken the stage on 4567 for development with backup from WEBrick
[2014-06-06 01:55:43] INFO  WEBrick 1.3.1
[2014-06-06 01:55:43] INFO  ruby 1.9.3 (2011-10-30) [x86_64-linux]
[2014-06-06 01:55:43] INFO  WEBrick::HTTPServer#start: pid=9574 port=4567
**<<<redacted>>>** - - [06/Jun/2014 01:55:53] "GET / HTTP/1.1" 200 11 0.0029
**<<<redacted>>>** - - [06/Jun/2014:01:55:53 PDT] "GET / HTTP/1.1" 200 11
- -> /
^C
== Sinatra has ended his set (crowd applauds)
[2014-06-06 01:56:01] INFO  going to shutdown ...
[2014-06-06 01:56:01] INFO  WEBrick::HTTPServer#start done.
**<<<removed # from in front of chartkick>>>**
$ ruby example.rb
/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require': cannot load such file -- chartkick (LoadError)
        from /usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require'
        from example.rb:3:in `<main>'

任何人都知道为什么要求失败,或者我可以尝试什么?我确实有一个“公共”文件夹,其中包含“chartkick.js”。

4

1 回答 1

0

为了关闭循环:我安装了多个版本的 ruby​​,并且在安装 gems 之前我没有将链接更改为 1.9.3。因此,在我将 ruby​​ 链接指向 1.9.3 可执行文件并将 gem 链接指向其 1.9.3 版本之后,我重新安装了 gems,现在它可以工作了。

于 2014-06-10T08:05:29.490 回答