Проблема с сервером развертывания Ruby: отсутствующий гем Rails 2.3.5 - PullRequest
1 голос
/ 05 октября 2010

Я пытаюсь установить сервер rails для своего приложения.Я использую Ubuntu 10.04 TLS с apache2 в качестве веб-сервера.Я сделал поиск в Google, но я не нашел то, что мне помогло.Когда я пытался подключиться к своему приложению, у меня появляется следующая ошибка:

Приложение закрылось во время запуска (т. Е. Во время оценки config / environment.rb).Сообщение об ошибке можно найти ниже.Чтобы решить эту проблему, пожалуйста, следуйте инструкциям в сообщении об ошибке.

Сообщение об ошибке: Отсутствует гем Rails 2.3.5.gem install -v=2.3.5 rails, обновите параметр RAILS_GEM_VERSION в config / environment.rb для установленной вами версии Rails или закомментируйте RAILS_GEM_VERSION, чтобы использовать последнюю установленную версию.

Так что я не понимаю, так как rails установлен:

          desktop:/etc/apache2$ rails -v
          Rails 2.3.5

список драгоценных камней:

      gem list

      *** LOCAL GEMS ***

      abstract (1.0.0)
      actionmailer (2.3.5)
      actionpack (2.3.5)
      activerecord (2.3.5)
      activeresource (2.3.5)
      activesupport (2.3.5)
      arel (1.0.1)
      builder (2.1.2)
      bundler (1.0.0)
      cgi_multipart_eof_fix (2.5.0)
      daemon_controller (0.2.5)
      daemons (1.1.0)
      erubis (2.6.6)
      fastthread (1.0.7)
      file-tail (1.0.5)
      gem_plugin (0.2.3)
      i18n (0.4.1)
      linecache (0.43)
      mail (2.2.5)
      mime-types (1.16)
      mongrel (1.1.5)
      needle (1.3.0)
      net-ssh (1.1.4)
      passenger (2.2.15)
      polyglot (0.3.1)
      rack (1.0.1)
      rack-mount (0.6.13)
      rack-test (0.5.4)
      rails (2.3.5)
      rake (0.8.7)
      ruby-debug-base (0.10.3)
      ruby-debug-ide (0.4.5)
      rubyzip (0.9.4)
      spruz (0.1.5)
      sqlite3-ruby (1.3.1)
       thor (0.14.0)
      treetop (1.4.8)
      tzinfo (0.3.23)

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ: Я работаю в Windows, и мой серверLinux может быть, проблема в этом.Я не знаю.В любом случае, заранее спасибо за помощь.

Даже если я являюсь пользователем root, я не могу открыть консоль:

   root@et1-desktop:/home/et1/wip3/sophia/script# ./console
   Loading development environment (Rails 2.3.5)
   sh: irb: not found


gem environment
RubyGems Environment:
 - RUBYGEMS VERSION: 1.3.7
 - RUBY VERSION: 1.8.7 (2010-01-10 patchlevel 249) [x86_64-linux]
 - INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8
 - RUBY EXECUTABLE: /usr/bin/ruby1.8
 - EXECUTABLE DIRECTORY: /usr/bin
 - RUBYGEMS PLATFORMS:
 - ruby
 - x86_64-linux
 - GEM PATHS:
    - /usr/lib/ruby/gems/1.8
    - /home/et1/.gem/ruby/1.8
  - GEM CONFIGURATION:
    - :update_sources => true
    - :verbose => true
    - :benchmark => false
    - :backtrace => false
    - :bulk_threshold => 1000
    - :sources => ["http://gems.rubyforge.org/", "http://gems.rubyforge.org"]
 - REMOTE SOURCES:
    - http://gems.rubyforge.org/
    - http://gems.rubyforge.org

Ответы [ 5 ]

1 голос
/ 05 октября 2010

- следующая строка, добавленная в environment.rb

RAILS_GEM_VERSION = '2.3.5' unless defined? RAILS_GEM_VERSION

, а также попробуйте эту команду в терминале. Посмотрите, есть ли установленный камень для рельсов

gem list
0 голосов
/ 27 сентября 2012

Я действительно надеюсь, что это кому-то поможет: я столкнулся с той же проблемой "Отсутствие Rails 2.3.5 gem" ... Способ, которым я решил это, я переместил мое приложение в стек heroku bamboo-ree-1.8.7 heroku stack:migrate bamboo-ree-1.8.7 и в моем конфиге /environment.rb файл, который я добавил config.gem "rack", :version => '1.0.1'

Проблема в том, что стойка 1.1.0 не будет работать с рельсами 2.3.5

0 голосов
/ 07 октября 2010

Мне кажется, я нашел свою проблему. Сначала я следую инструкциям следующих ссылок: http://gembundler.com/rails23.html Затем я запускаю команду rake db: migrate RAILS_ENV = production

После этого сервер работает нормально.

Спасибо всем за помощь.

0 голосов
/ 05 октября 2010

Я также видел эту проблему, когда в системе есть несколько версий ruby, которые ссылаются на разные хранилища гемов.В этом случае эти команды должны помочь в отладке:

   which ruby

   which gem

и из документа rubygem] 1

   gem environment  
0 голосов
/ 05 октября 2010

Возможно, что пользователь, который входит в систему из командной строки, не имеет такого же списка драгоценных камней, как пользователь, на котором вы запускаете сервер.

Это обычно происходит, когда вы устанавливали гемы как пользователь командной строки без использования sudo, что означает, что они будут доступны только этому пользователю.

Стоит проверить, где установлены ваши драгоценные камни. Если они находятся в папке .gem из домашнего каталога вашего пользователя, это означает, что они установлены только для этого пользователя.

Я бы попробовал запустить оболочку как пользователь, от имени которого работает сервер, и убедиться, что пользователь имеет доступ к гему, который вам необходим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...