Rails: команда не найдена после успешной установки

Итак, я установил ruby, gems и rails, однако всякий раз, когда я набираю rails, я получаю ошибку rails: Command not found..

Я сделал дамп моих местных драгоценных камней, которые я включу ниже

*** LOCAL GEMS ***

actionmailer (3.2.7)
actionpack (3.2.7)
activemodel (3.2.7)
activerecord (3.2.7)
activeresource (3.2.7)
activesupport (3.2.7)
arel (3.0.2)
bigdecimal (1.1.0)
builder (3.0.0)
bundler (1.1.5)
daemon_controller (1.0.0)
erubis (2.7.0)
fastthread (1.0.7)
hike (1.2.1)
i18n (0.6.0)
io-console (0.3)
journey (1.0.4)
json (1.5.4)
mail (2.4.4)
mime-types (1.19)
minitest (2.5.1)
multi_json (1.3.6)
mysql (2.8.1)
passenger (3.0.14)
polyglot (0.3.3)
rack (1.4.1)
rack-cache (1.2)
rack-ssl (1.3.2)
rack-test (0.6.1)
rails (3.2.7)
railties (3.2.7)
rake (0.9.2.2)
rdoc (3.12, 3.9.4)
sprockets (2.1.3)
thor (0.15.4)
tilt (1.3.3)
treetop (1.4.10)
tzinfo (0.3.33)

Я также проверил настройку среды gem (ниже)

 - RUBYGEMS VERSION: 1.8.24
  - RUBY VERSION: 1.9.3 (2011-10-30 patchlevel 0) [x86_64-freebsd8.1]
  - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.9.1
  - RUBY EXECUTABLE: /usr/local/bin/ruby
  - EXECUTABLE DIRECTORY: /usr/local/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-freebsd-8
  - GEM PATHS:
     - /usr/local/lib/ruby/gems/1.9.1
     - /root/.gem/ruby/1.9.1
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/

и повторил мою переменную $PATH /sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/root/bin

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

whereis rails
rails: /usr/local/bin/rails

и выполнить рельсы оттуда, опять же, я получил rails: Command not found.

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


person Drazion    schedule 28.07.2012    source источник
comment
Вы проверяли права на выполнение скрипта?   -  person Strelok    schedule 28.07.2012
comment
Сделал проверку и вот что получилось # cd /usr/local/bin # ls -l | grep rails rwxr-xr-x 1 ---- ---- 385 27 июл 19:24 рельсы   -  person Drazion    schedule 28.07.2012
comment
Не ответ на ваш запрос, но решение вашей проблемы может состоять в том, чтобы запустить сценарий готовности рельсов. Я использую его всякий раз, когда настраиваю новую машину, и он отлично работает для меня. Вы можете найти его здесь github.com/joshfng/railsready   -  person lyonsinbeta    schedule 28.07.2012
comment
Вы запускали rehash в своей оболочке?   -  person arrowd    schedule 29.07.2012
comment
Да, в итоге я удалил и переустановил все - получил ошибки yaml (хотя он тоже установлен), но теперь он работает. Понятия не имею, что изменилось   -  person Drazion    schedule 29.07.2012
comment
Создание символической ссылки помогло мне в Mac OS sudo ln -s /Library/Ruby/Gems/1.8/bin/rails /usr/bin/rails   -  person Manish    schedule 11.04.2013


Ответы (4)


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

/root/.gem/ruby/1.9.1

Итак, будущие читатели, загляните в другие ваши GEM PATHS.

(И затем, если это неправильно, я обновлю этот ответ соответствующим образом.)

person fdsaas    schedule 08.08.2012
comment
rvm --force gemset empty удалите драгоценные камни и установите его снова - person sagar junnarkar; 13.06.2015

Если вы установили Rails только через Bundler, то rails будет доступен, только если вы запустите bundle exec rails.

«Голая» rails команда будет существовать только в том случае, если вы gem install rails будете работать напрямую без Bundler.

person Grant Birchmeier    schedule 13.10.2014
comment
Я думал об этом и только что наткнулся на ваш ответ. Спасибо. - person Elvn; 03.04.2015
comment
благодарю вас. люди продолжают говорить gem install rails, но что, если я не хочу устанавливать его глобально? это имеет смысл как способ выполнить определенную версию рельсов, установленных и управляемых через сборщик с проектом. - person thedarklord47; 07.10.2020


Если ваше приложение работает в рабочей среде, но не может найти команду rails в корневом каталоге, это может помочь:

бежать

скрипт/rails c ENV

Вместо

рельсы c ENV

У меня была такая же проблема, и я решил ее таким образом. Приложение работало с nginx/passenger, но не могло запустить консоль rails/сервер rails в рабочей среде.

person Muntasim    schedule 04.04.2013
comment
ruby установлен без RVM - person Muntasim; 04.04.2013