Установленные направляющие, но команда направляющих говорят, что она не установлена

28
задан rgoytacaz 23 December 2009 в 17:58
поделиться

8 ответов

Как говорят другие, это вполне может быть проблема с переменной PATH в вашем файле bashrc/bash_profile.

Вы можете узнать, как изменить PATH..

Вы можете получить текущую переменную PATH, набрав echo $PATH

21
ответ дан 28 November 2019 в 03:03
поделиться

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

16
ответ дан Kyle Clegg 14 October 2019 в 10:43
поделиться

Только что та же проблема, просто добавьте следующее в ваш .bashrc

PATH="${PATH}:/var/lib/gems/1.8/bin/"
12
ответ дан Titouan de Bailleul 14 October 2019 в 10:43
поделиться

Предполагая, что ruby-2.0.0-p247 установлено, rails находится в следующем месте.

prayag@prayag$ 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

И, это должно работать.

3
ответ дан prayagupd 14 October 2019 в 10:43
поделиться

Я думаю, что это не правильный способ решить эту проблему. Но что я сделал, так это то, что я создал файл 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/ruby-1.9.3-p286@global/bin:/home/anand/.rvm/rubies/ruby-1.9.3-p286/bin:/home/anand/.rvm/bin

Согласно TK, вы можете получить путь к исполняемому файлу, используя команду gem environment

1
ответ дан Anand Soni 14 October 2019 в 10:43
поделиться

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

1
ответ дан Michael Wales 14 October 2019 в 10:43
поделиться

Если вы используете rbenv, не забудьте добавить

eval "$(rbenv init -)"

в ваши .bash_profile или другие сценарии запуска. прогон rbenv rehash также необходим.

1
ответ дан William Hu 14 October 2019 в 10:43
поделиться

Вы можете включить путь к папке Ruby / Jruby в ваш файл bashrc. Это гарантирует, что вы сможете запускать его откуда угодно. Не забудьте перезапустить терминал или "исходный .bashrc", чтобы перезагрузить переменные в терминалах.

-1
ответ дан 28 November 2019 в 03:03
поделиться