所以我安装了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命令告诉我安装了rails的地方
whereis rails
rails: /usr/local/bin/rails
型
然后从那里执行rails,同样,我得到了rails: Command not found.
我在VPS上运行FreeBSD,并且想学习PHP之外的其他语言,但是我似乎无法用一生的时间来理解这一点。任何帮助都会很棒
6条答案
按热度按时间wqsoz72f1#
我不确定是否所有的gem文件都位于第一次安装的ruby文件夹中,但是如果gem安装在一个单独的目录中,rails将无法工作。在我的例子中,rails被安装在一些.local目录中,这不是ruby所在路径的一部分。一旦我删除了这个外部目录,我就运行geminstallrails来重新安装所有的gem。这正确地把所有的宝石内的ruby文件夹和问题得到解决。
omqzjyyz2#
如果你只通过Bundler安装Rails,那么只有运行
bundle exec rails
才能访问rails
。只有在没有Bundler的情况下直接执行
gem install rails
时,才存在“naked”rails
命令。ar7v8xwq3#
如果你使用的是
rbenv
,那么在为你的rails应用程序安装依赖项之后,你可能需要运行rbenv rehash
。即bundle install
digitalocean:
无论何时安装新版本的Ruby或提供命令的gem,都应该运行rehash子命令。这将为rbenv已知的所有Ruby可执行文件安装shim,这将允许您使用可执行文件:
希望这对你有帮助!
gg0vcinb4#
如果您的应用正在生产环境中运行,但在root上找不到rails命令,那么这可能会有所帮助:
运行
script/rails c ENV
而不是
导轨c ENV
我也遇到了同样的问题,就这样解决了。该应用程序在nginx/passenger上运行,但无法在生产环境中运行rails console/ rails server。
lf3rwulv5#
我确信你的问题是由其他gem目录中的gem引起的,在这里:
字符串
因此,对于未来的读者,请查看您的其他
GEM PATHS
。(And如果这个答案是错的,我会及时更新。)
kdfy810k6#
我刚刚在另一个场景中遇到了同样的问题,我在
ubuntu-20.04
上安装了rails
沿着rvm
。我不得不将以下行添加到我的
~/.bashrc
(或`~/. profile ')字符串