【问题标题】:Could not find RubyGem rake找不到 RubyGem 耙子
【发布时间】:2012-04-10 18:13:35
【问题描述】:
sh -c 'cd /home/xyz/xyz.com/releases/20120410180718 &&
/home/xyz/.gems/bin/rake RAILS_ENV=production RAILS_GROUPS=assets
assets:precompile' [out ::] /usr/lib/ruby/1.8/rubygems.rb:779:in
`report_activate_error' [out ::] : Could not find RubyGem rake (>= 0)
(Gem::LoadError [out ::] ) [out ::] from
/usr/lib/ruby/1.8/rubygems.rb:214:in `activate' [out ::] from
/usr/lib/ruby/1.8/rubygems.rb:1082:in `gem' [out ::] from
/home//.gems/bin/rake:18

我正在使用 cap deploy:migrations 命令 请帮忙。

这是我的 Gemfile

source 'https://rubygems.org'

gem 'rails'
gem "mysql2", "~> 0.3.11"
gem "rake"
# Gems used only for assets and not required
# in production environments by default.
group :assets do
   gem 'compass-rails'
   gem 'sass-rails',   '~> 3.2.3'
   gem 'haml'
   gem 'haml-rails'
   gem 'coffee-rails', '~> 3.2.1'
   gem 'uglifier', '>= 1.0.3'
end

#Media managment
gem 'carrierwave'
gem 'ruby_parser'
gem 'hpricot'


# deployment 
gem 'capistrano'

在服务器端

[ps89405]$ rake --version
rake, version 0.9.2.2

更新:

从服务器运行没有上限的相同命令有效!

[ps89405]$ cd /home//.com/releases/20120410183344 &&    /home//.gems/bin/rake RAILS_ENV=production RAILS_GROUPS=assets assets:precompile
[ps89405]$ 

更新: 我加了 需要“捆绑器/capistrano”

到我的 deploy.rb

现在我有这个问题

用这个命令

  cd /home/.com/releases/20120410201511 && bundle install --gemfile 

/home/.com/releases/20120410201511/Gemfile --path /home/.com/shared/bundle --deployment --quiet --没有开发测试

如果我使用 cap 命令,我会得到

bundle: command not found

当我在服务器上手动运行它时,它工作正常!

【问题讨论】:

  • 把你的命令行放到问题框里不会给你答案...
  • 我亲爱的朋友。为什么你假设我正在转储我的命令行!!!我想我发布了足够的解释!
  • 很抱歉错过了命令行高亮显示。我还为您添加了更多细节。
  • 请添加您的deploy.rb 文件和cap deploy:check 的输出?

标签: ruby-on-rails capistrano


【解决方案1】:

您是否在部署目标上完成了bundle install?该错误似乎暗示您的捆绑包未安装。

Could not find RubyGem rake (>= 0) 表示镜头在未安装 rake gem 的上下文中运行。

【讨论】:

  • 是的,我有。我运行手动生成错误的相同命令并且它有效!但是使用 cap 命令失败了!
  • sh -c 'cd /home/xyz/xyz.com/releases/20120410180718 && /home/xyz/.gems/bin/rake RAILS_ENV=production RAILS_GROUPS=assets bundle 上下文中运行。将其更改为 sh -c 'cd /home/xyz/xyz.com/releases/20120410180718 && /home/xyz/.gems/bin/bundle rake RAILS_ENV=production RAILS_GROUPS=assets 并重试,看看是否有所不同。
  • 我想我应该问你是否使用bundler - 我没有先问是错误的假设。
  • 我该怎么做?我应该更改 deploy.rb 文件吗?
  • 这是我首先要看的地方,是的。
猜你喜欢
  • 1970-01-01
  • 2012-04-07
  • 2014-08-02
  • 1970-01-01
  • 1970-01-01
  • 2011-09-21
  • 1970-01-01
  • 1970-01-01
  • 2012-04-11
相关资源
最近更新 更多