Ответ 1
Как говорят другие, это может быть проблемой PATH-переменной в файле bashrc/bash_profile.
Вы можете узнать, как изменить PATH..
Вы можете получить текущую переменную PATH, набрав echo $PATH
Я использую Ubuntu 9.10 Karmic Koala и Ruby 1.9.1.
Я установил Rails с помощью sudo gem install rails
, который установил для меня все библиотеки.
Когда я печатаю rails
в терминале, он говорит.
В настоящее время программа "рельсы" не установлена. Вы можете установить его, набрав: sudo apt-get установочные рельсы rails: команда не найдена
Я могу найти рейк, который находится под rake1.9.1, но Rails нигде не найдено, может ли кто-нибудь указать мне в правильном направлении?
Изменить: путь к рубину не проблема, проблема в том, где рельсы? как его выполнить? рельсы просто не работают, где живет exectuable?
Как говорят другие, это может быть проблемой PATH-переменной в файле bashrc/bash_profile.
Вы можете узнать, как изменить PATH..
Вы можете получить текущую переменную PATH, набрав echo $PATH
Если вы запускаете команду rails сразу после установки рельсов, вам нужно будет перезапустить терминал до того, как ваши команды будут распознаны.
Только одна и та же проблема просто поместила следующее в ваш .bashrc
PATH="${PATH}:/var/lib/gems/1.8/bin/"
Предполагая, что ruby-2.0.0-p247
установлен, rails
находится в следующем местоположении.
[email protected]$ ls -l ~/.rvm/gems/ruby-2.0.0-p247/bin/
total 60
-rwxr-xr-x 1 prayag prayag 484 Oct 2 00:20 cap
-rwxr-xr-x 1 prayag prayag 487 Oct 2 00:20 capify
-rwxr-xr-x 1 prayag prayag 475 Oct 1 21:13 erubis
-rwxr-xr-x 1 prayag prayag 469 Oct 1 21:13 rackup
-rwxr-xr-x 1 prayag prayag 480 Oct 1 21:18 rails
-rwxr-xr-x 1 prayag prayag 494 Oct 2 00:27 restclient
-rwxrwxr-x 1 prayag prayag 368 Oct 1 21:10 ruby_executable_hooks
-rwxr-xr-x 1 prayag prayag 467 Oct 2 00:27 sass
-rwxr-xr-x 1 prayag prayag 475 Oct 2 00:27 sass-convert
-rwxr-xr-x 1 prayag prayag 467 Oct 2 00:27 scss
-rwxr-xr-x 1 prayag prayag 487 Oct 1 21:20 sprockets
-rwxr-xr-x 1 prayag prayag 483 Oct 2 00:29 stripe-console
-rwxr-xr-x 1 prayag prayag 467 Oct 1 21:17 thor
-rwxr-xr-x 1 prayag prayag 467 Oct 1 21:20 tilt
-rwxr-xr-x 1 prayag prayag 474 Oct 1 21:16 tt
[1] .bash_profile
уже должен содержать следующую строку, если не добавить.
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
[2] Добавьте следующую строку в конец .bashrc
.
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
PATH="${PATH}:${HOME}/.rvm/gems/ruby-2.0.0-p247/bin/"
[3] Обновить ~/.bashrc
$ source ~/.bashrc
И он должен работать.
Если вы запустили rbenv, вам нужно запустить rbenv rehash, чтобы получить доступ к команде rails-api.
gem
должен поместить рельсы исполняемые script в том же месте, что и ruby. Я бы посмотрел туда и убедился, что права доступа установлены правильно, и они исполняются.
Я думаю, что это неправильный способ решить эту проблему. Но то, что я сделал, Я создал файл rails.rb в моем исполняемом каталоге, потому что, когда я открываю этот файл каталога, он не был там и помещал следующий контент.
#!/usr/bin/env ruby_noexec_wrapper
#
# This file was generated by RubyGems.
#
# The application 'railties' is installed as part of a gem, and
# this file is here to facilitate running it.
#
require 'rubygems'
version = ">= 0"
if ARGV.first =~ /^_(.*)_$/ and Gem::Version.correct? $1 then
version = $1
ARGV.shift
end
gem 'railties', version
load Gem.bin_path('railties', 'rails', version)
то я пытаюсь запустить rails s
в моем проекте и его работах.
Но перед этим убедитесь, что исполняемый каталог находится на вашем пути, как я уже на моем компьютере:
/home/anand/.rvm/gems/ruby-1.9.3-p286/bin:/home/anand/.rvm/gems/[email protected]/bin:/home/anand/.rvm/rubies/ruby-1.9.3-p286/bin:/home/anand/.rvm/bin
Как сказано в ТК, вы можете получить исполняемый путь, используя команду gem environment
Я добавил следующие строки в мой .bashrc файл, и он сработал.
[[-s "$ HOME/.rvm/scripts/rvm" ]] && & && & source "$ HOME/.rvm/scripts/rvm" # Загрузить RVM в сеанс оболочки как функцию
PATH = "$ {PATH}:. ${HOME}/RVM/драгоценные камни/рубин-1.9.3-P327/bin/"
Если вы используете rbenv
, не забудьте добавить
eval "$(rbenv init -)"
в ваш .bash_profile
или другие сценарии запуска.
run rbenv rehash
также требуется.
Возможное решение - не поддерживать два разных файла конфигурации .bash_profile
и .bashrc
В этом превосходном сообщении о различии между .bash_profile
и .bashrc
находится источник .bashrc
из вашего файла .bash_profile
, а затем добавьте PATH и общие настройки в .bashrc
.
Цитата,
добавьте следующие строки в .bash_profile
:
if [ -f ~/.bashrc ]; then
source ~/.bashrc
fi
конец цитаты
Вы можете указать путь к папке Ruby/Jruby в файле bashrc. Это гарантирует, что вы сможете запустить его из любого места. Не забудьте перезапустить терминал или "источник .bashrc", чтобы перезагрузить переменные в терминалах.