Rails:安装成功后找不到命令

时间:2012-07-28 14:18:26

标签: ruby-on-rails ruby freebsd

所以我安装了ruby,gem和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)

我还检查了我的宝石环境设置(下面)

 - 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命令告诉我安装了rails的位置

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

并从那里执行rails,再次,我得到rails: Command not found.

我在VPS上运行FreeBSD,并希望学习PHP之外的其他一些语言,但我似乎无法在生活中找到这一点......任何帮助都会令人惊叹。< / p>

4 个答案:

答案 0 :(得分:24)

如果您仅通过Bundler安装了Rails,那么只有在您运行rails时才能访问bundle exec rails

A&#34;裸体&#34;只有rails直接没有Bundler才会存在gem install rails命令。

答案 1 :(得分:2)

我确定你的问题是由其他gem目录中的gem引起的,这里是:

/root/.gem/ruby/1.9.1

因此,对于未来的读者,请查看您的其他GEM PATHS

(如果这是错的,我会适当地更新这个答案。)

答案 2 :(得分:2)

如果你的应用程序在生产环境中运行但在root上找不到rails命令,那么这可能会有所帮助:

运行

script / rails c ENV

而不是

rails c ENV

我有同样的问题并以这种方式解决了。该应用程序使用nginx / passenger运行,但无法在生产中运行rails console / rails服务器。

答案 3 :(得分:0)

如果您正在使用rbenv,则可能在为rails应用程序安装依赖项后需要运行rbenv rehash。即。 bundle install

来自digitalocean

  

无论何时安装新版本的Ruby或提供命令的gem,都应运行rehash子命令。这将为rbenv已知的所有Ruby可执行文件安装垫片,从而允许您使用这些可执行文件:

希望这会有所帮助!