Это не проблема RVM, так как я использую его с Sinatra.
Вот некоторый тестовый код:
#!/usr/bin/env ruby
require 'sinatra'
get '/hi' do
"Hello World! #{ `rvm -v` }"
end
Сохраните это как что-то вроде test.rb
и выполните chmod +x test.rb
сделать его исполняемым.Подтвердите, что вы запускаете Ruby под управлением RVM, используя which ruby
, который должен возвращать путь в вашем пути ~/.rvm
.Запустите код, используя ./test.rb
, и ваш Ruby, управляемый RVM, запустит его.
Консоль вышла:
>> == Sinatra/1.2.3 has taken the stage on 4567 for development with backup from WEBrick
>> [2011-04-30 14:49:56] INFO WEBrick 1.3.1
>> [2011-04-30 14:49:56] INFO ruby 1.9.2 (2011-02-18) [x86_64-darwin10.6.0]
>> [2011-04-30 14:49:56] INFO WEBrick::HTTPServer#start: pid=3387 port=4567
>> 127.0.0.1 - - [30/Apr/2011 14:50:02] "GET /hi HTTP/1.1" 200 103 0.2499
>> localhost - - [30/Apr/2011:14:50:01 MST] "GET /hi HTTP/1.1" 200 103
>> - -> /hi
>> 127.0.0.1 - - [30/Apr/2011 14:50:02] "GET /favicon.ico HTTP/1.1" 404 441 0.0008
>> localhost - - [30/Apr/2011:14:50:02 MST] "GET /favicon.ico HTTP/1.1" 404 441
>> http://localhost:4567/hi -> /favicon.ico
>>
>> == Sinatra has ended his set (crowd applauds)
>> [2011-04-30 14:50:11] INFO going to shutdown ...
>> [2011-04-30 14:50:11] INFO WEBrick::HTTPServer#start done.
И то, что я увидел в своем браузере:
Hello World! rvm 1.6.5 by Wayne E. Seguin (wayneeseguin@gmail.com) [https://rvm.beginrescueend.com/]
Изменение на:
<code>get '/hi' do
"<pre>#{ `which ruby` }
"end
отображает это в моем браузере:
/Users/greg/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
Итак, в основном, у меня работает RVM на моемsystem и Ruby 1.9.2 - текущий Ruby. Попробуйте этот код, запустите его и посмотрите, получите ли вы вывод в своем браузере.
Также посмотрите, актуален ли ваш RVM. Он увеличился до 1.6.5 на прошлой неделеЕсли вы не используете текущий код:
rvm get head
rvm reload
РЕДАКТИРОВАТЬ:
Еще один тест, чтобы показать, какой Ruby запущен: Измените код на этот:
#!/usr/bin/env ruby
require 'sinatra'
get '/hi' do
"Running using: #{RUBY_VERSION}<br>Ruby in path found at: #{ `which ruby` }"
end
и запустите его. Если ваш интерпретатор работает с установленным системой Ruby на MacOS или установкой по умолчанию для Ruby через apt-get, вы будете на 1.8.7. Я получаю:
Running using: 1.9.2
Ruby in path found at: /Users/greg/.rvm/rubies/ruby-1.9.2-p180/bin/ruby