最终尝试使用Capistrano在mac上运行登台服务器。现在我只是想在登录时正确设置环境。
$bundle show rails
-bash: bundle: command not found
$ rvm use 1.9.3
Using /Users/me/.rvm/gems/ruby-1.9.3-p551
$ bundle show rails
/Users/me/.rvm/gems/ruby-1.9.3-p551/gems/rails-3.1.10
以下是gem environment
$ gem environment
RubyGems Environment:
- RUBYGEMS VERSION: 2.4.8
- RUBY VERSION: 1.9.3 (2014-11-13 patchlevel 551) [x86_64-darwin14.5.0]
- INSTALLATION DIRECTORY: /Users/me/.rvm/gems/ruby-1.9.3-p551-rvm
- RUBY EXECUTABLE: /Users/me/.rvm/rubies/ruby-1.9.3-p551-rvm/bin/ruby
- EXECUTABLE DIRECTORY: /Users/me/.rvm/gems/ruby-1.9.3-p551-rvm/bin
- SPEC CACHE DIRECTORY: /Users/me/.gem/specs
- SYSTEM CONFIGURATION DIRECTORY: /Users/me/.rvm/rubies/ruby-1.9.3-p551-rvm/etc
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-darwin-14
- GEM PATHS:
- /Users/me/.rvm/gems/ruby-1.9.3-p551-rvm
- /Users/me/.rvm/gems/ruby-1.9.3-p551-rvm@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- https://rubygems.org/
- SHELL PATH:
- /Users/me/.rvm/gems/ruby-1.9.3-p551-rvm/bin
- /Users/me/.rvm/gems/ruby-1.9.3-p551-rvm@global/bin
- /Users/me/.rvm/rubies/ruby-1.9.3-p551-rvm/bin
- /Users/me/.rvm/bin
- /usr/local/bin
- /usr/bin
- /bin
- /usr/sbin
- /sbin
这是~/.bash_profile
:
[[ -s "$HOME/.profile" ]] && source "$HOME/.profile" # Load the default .profile
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
~/.profile
中没有任何内容。
不确定rvm list
的正常情况,但我觉得1.9.3的2个安装可能是个问题。
rvm list
rvm rubies
ruby-1.9.3-p551 [ x86_64 ]
=> ruby-1.9.3-p551-rvm [ x86_64 ]
ruby-2.0.0-p451 [ x86_64 ]
* ruby-2.0.0-p643 [ x86_64 ]
# => - current
# =* - current && default
# * - default
更新:绝对安装1.9.3。卸载1.9.3-p551和1.9.3-p551-rvm并重新安装1.9.3-p551。现在,当在dir中进行cd时,它说:
ruby-1.9.3-p551-rvm is not installed.
To install do: 'rvm install ruby-1.9.3-p551-rvm'
不确定为什么最后坚持-rvm
。我的.ruby-version
只有rvm 1.9.3-p551
。
另一个更新:我没有理由坚持使用1.9.3所以我已经转移到了2.0.0。 rvm似乎存在某种类型的错误,最终期望-rvm
为1.9.3。还需要弄清楚我的路径rvm路径。路径到 RVM很好。这似乎是一个全球性问题。工作正常的目录which bundle
返回/Users/joshuamark/.rvm/gems/ruby-2.0.0-p451@global/bin/bundle
。使用/Users/joshuamark/.rvm/gems/ruby-2.0.0-p643/bin/bundle
后,无效的目录将返回rvm use
。
答案 0 :(得分:0)
通过全新的bash会话,我在损坏的目录中运行gem install bundler
然后bundle
。完成后,gem env
有正确的路径,新会话找到bundle
命令。
我仍然觉得rvm use
指向默认的rvm环境而不是应用程序中的命名空间环境(通过.ruby-gemset
)非常奇怪。似乎安装bundler与为rvm设置gem env有关。如果有人拥有它,我会很感激。