嗨,我一直在尝试安装Ruby gem包.gem install bundle收到此消息后,我按照说明进行操作,但在输入时仍然无效bundle -v.我也打字
which bundle 并收到
/Users/edmundmai/.rvm/bin/bundle
Run Code Online (Sandbox Code Playgroud)
所以它存在!! 那为什么它不起作用!! 神秘的$ PATH有什么问题吗?(我是个菜鸟).
这是我的.bash_profile:
PATH=$PATH:~/bin
export PATH
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # Load RVM function
Run Code Online (Sandbox Code Playgroud)
这是我的.bashrc:
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
Run Code Online (Sandbox Code Playgroud)
这是我的宝石环境:
RubyGems Environment:
- RUBYGEMS VERSION: 1.8.24
- RUBY VERSION: 1.9.3 (2012-04-20 patchlevel 194) [x86_64-darwin11.3.1]
- INSTALLATION DIRECTORY: /Users/edmundmai/.rvm/gems/ruby-1.9.3-p194@rails3tutorial2ndEd
- RUBY EXECUTABLE: /Users/edmundmai/.rvm/rubies/ruby-1.9.3-p194/bin/ruby
- EXECUTABLE DIRECTORY: /Users/edmundmai/.rvm/gems/ruby-1.9.3-p194@rails3tutorial2ndEd/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-11
- GEM PATHS:
- /Users/edmundmai/.rvm/gems/ruby-1.9.3-p194@rails3tutorial2ndEd
- /Users/edmundmai/.rvm/gems/ruby-1.9.3-p194@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- "install" => "--no-rdoc --no-ri"
- "update" => "--no-rdoc --no-ri"
- REMOTE SOURCES:
- http://rubygems.org/
Run Code Online (Sandbox Code Playgroud)
echo $ PATH
/Users/edmundmai/.rvm/bin:/Users/edmundmai/.rvm/gems/ruby-1.9.3-p194@rails3tutorial2ndEd/bin:/Users/edmundmai/.rvm/gems/ruby-1.9.3-p194@global/bin:/Users/edmundmai/.rvm/rubies/ruby-1.9.3-p194/bin:/Users/edmundmai/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Users/edmundmai/bin:/Users/edmundmai/bin
更新所以在尝试再次阅读RoR教程后,我在本章前面的两个终端窗口中重复了一些步骤(让我们称它们为终端#1和终端#2).终端#2仍然不起作用(命令行不在任何目录,只是默认目录),而终端#1(在我的sample_app目录下)工作.我想rvm get head && rvm reload可能是关键?但这是否意味着我每次打开终端时都必须运行它?检查我的终端#1命令之前和之后(我删除了一些输出,以便更清楚我的输入行是什么):
Edmunds-MacBook-Pro:sample_app edmundmai$ bundle -v
ERROR: Gem bundler is not installed, run `gem install bundler` first.
Edmunds-MacBook-Pro:sample_app edmundmai$ gem install
ERROR: While executing gem ... (Gem::CommandLineError)
Please specify at least one gem name (e.g. gem build GEMNAME)
Edmunds-MacBook-Pro:sample_app edmundmai$ rvm -v
rvm 1.15.8 (master) by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.io/]
Edmunds-MacBook-Pro:sample_app edmundmai$ rspec spec/
No DRb server is running. Running in local process instead ...
........
Finished in 0.36709 seconds
8 examples, 0 failures
Randomized with seed 59500
Edmunds-MacBook-Pro:sample_app edmundmai$ subl .
Edmunds-MacBook-Pro:sample_app edmundmai$ bundle install --binstubs=./bundler_stubs
Using rake (0.9.2.2)
...
...
(**list of stuff)
Using uglifier (1.2.3)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
Edmunds-MacBook-Pro:sample_app edmundmai$ bundle show bundler
/Users/edmundmai/.rvm/gems/ruby-1.9.3-p194@rails3tutorial2ndEd/gems/bundler-1.2.0
Run Code Online (Sandbox Code Playgroud)
我非常不清楚$ PATH的作用.如果你们需要更多信息,请随时告诉我,我会提供.
jmd*_*din 85
我认为这是问题所在:你有一个安装到特定gemset的捆绑器,这就是为什么它只有在你的应用程序目录中时才可用(我假设那里有一个.rvmrc文件).
你有几个选择:
bundler到全局gemset.rvm gemset use global && gem install bundlerbrew install ruby避免使用rvm.(还有rbenv和ry作为rvm的替代品,但我只是在所有应用程序中使用1.9.3,所以Homebrew很好.)作为参考,$PATH是包含保持可执行目录列表的壳环境变量(例如,echo,ls,vim,等等).它是贝壳固有的.
ham*_*ady 53
有时候只是你没有正确地获取rvm,因为你不在登录shell中(使用屏幕?).类型
source ~/.rvm/scripts/rvm
并使用任何捆绑命令.
| 归档时间: |
|
| 查看次数: |
49416 次 |
| 最近记录: |