【问题标题】:ERROR: Could not find a valid gem 'crypt19' (= 1.2.1) in any repository while running with rails 3.2.18错误:在使用 rails 3.2.18 运行时,在任何存储库中都找不到有效的 gem 'crypt19' (= 1.2.1)
【发布时间】:2015-04-14 14:22:22
【问题描述】:

我正在使用 Rails 3.0 的 ruby​​ 版本 ruby-1.9.3-p547 [ x86_64 ]。 现在我有一个带有 Rails 版本 '2.3.18' 的项目。和 ree-1.8.7-2012.02 [ x86_64 ]。 bundle install 和 rake db:create 工作正常,当我运行 rake db:migrate 时,我收到以下通知:

Missing these required gems:
  crypt19  = 1.2.1

You're running:
  ruby 1.8.7.374 at /usr/local/rvm/rubies/ree-1.8.7-2012.02/bin/ruby
  rubygems 1.8.15 at /usr/local/rvm/gems/ree-1.8.7-2012.02@community_clean, /usr/local/rvm/gems/ree-1.8.7-2012.02@global

Run `rake gems:install` to install the missing gems.

当我运行上述命令时,出现以下错误:

ERROR:  Could not find a valid gem 'crypt19' (= 1.2.1) in any repository
ERROR:  Possible alternatives: crypt, crypt3, crypto, cryptor, cryptsy

您可以在 Gemfile 下方看到我是评论 crypt19。

我的宝石文件:

source 'http://rubygems.org'

gem 'rails', '2.3.18'

gem 'sqlite3'
gem 'acts-as-taggable-on', '2.0.4'
gem 'acts_as_archive', '0.4.0'
gem 'acts_as_dropdown', '2.0.3'
gem 'also_migrate', '0.3.5'
gem 'axlsx', '1.3.5'
#gem 'crypt19', '1.2.1'
gem 'bitly', '0.5.1'
gem 'builder', '3.0.0'
gem 'capistrano', '2.5.18'
gem 'capistrano-ext', '1.2.1'
gem 'chronic', '0.3.0'
gem 'command-t', '1.2.1'
gem 'daemons', '1.0.10'
gem 'database_cleaner', '0.6.0'
gem 'diff-lcs', '1.1.2'
gem 'eventmachine', '0.12.10'
gem 'github-markup', '0.5.3'
gem 'hashie', '0.2.0'
gem 'hoe', '2.5.0'
gem 'hoptoad_notifier', '2.4.2'
gem 'htmlentities', '4.3.1'
gem 'httparty', '0.5.2'
gem 'i18n', '0.6.0'
gem 'json_pure', '1.4.6'
gem 'mail', '2.3.0'
gem 'memcache-client', '1.8.5'
# gem 'memcached', '0.19.7'
gem 'mime-types', '1.16'
gem 'mocha', '0.9.10'
gem 'mogli', '0.0.16'
gem 'money', '2.1.5'
gem 'mover', '0.3.6'
gem 'oauth', '0.4.7'
gem 'polyglot', '0.3.1'
gem 'pony', '1.3'
gem 'powder', '0.1.7'
gem 'prawn', '0.8.4'
gem 'prawn-core', '0.8.4'
gem 'prawn-layout', '0.8.4'
gem 'prawn-security', '0.8.4'
gem 'rack', '1.1.6'
gem 'rack-rewrite', '1.0.2'
gem 'rack-test', '0.5.6'
# gem 'rmagick', '2.13.1'
gem 'rspec', '1.3.1'
gem 'rspec-rails', '1.3.3'
gem 'ruby-hmac', '0.4.0'
gem 'rubyzip', '0.9.9'
gem 'rvm', '1.11.3.5'
gem 'thor', '0.14.6'
gem 'tzinfo', '0.3.16'
gem 'validatable', '1.6.7'
gem 'webrat', '0.7.2'
gem 'will_paginate', '2.2.2'
gem 'xml-simple', '1.0.12'
gem 'yajl-ruby', '0.7.8'
gem 'rake', '0.8.7'

请把我从这个问题中拉出来。

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    截至 2013 年 2 月,crypt19 宝石从红宝石中消失了。虽然,gem 仍然托管在 github 上,因此您可以手动指定 git 存储库从何处获取 gem:

    gem 'crypt19-rb', :git => 'https://github.com/coffeejunk/crypt19.git', :branch => 'master'
    

    此外,请确保指定要使用的正确 gem 版本,因为上述 gem 的版本是 1.3.1,而不是 1.2.1。在您的 environment.rb 文件中,添加以下行(或将其替换为好的版本):

    config.gem 'crypt19-rb', :version => '1.3.1'
    

    为什么捆绑器会尝试安装您的 gem,即使它已被评论,我不确定我能否解释。也许是因为你错过了一个空间?但这很奇怪。

    【讨论】:

    • 如果我添加了 gem 'crypt19', :git => 'github.com/coupa/crypt19.git', :branch => 'master' 并运行 bundle install 我得到错误@ 987654325@
    • 你试过它的镜像吗? gem 'crypt19', :git => 'https://github.com/coffeejunk/crypt19.git'; :branch => 'master'。它是最近的,所以它可能工作。如果没有,请告诉我,我会尝试寻找其他解决方案。
    • 同一期 BishopBarber
    • 糟糕,在 coffejunk/crypt19 的 gemspec 中,你可以看到名字不是crypt19,而是crypt19-rb。您在 gemfile 中指定的名称必须与 gem 的 gemspec 中指定的名称匹配。如果您尝试gem 'crypt19-rb', :git => 'https://github.com/coffeejunk/crypt19.git', :branch => 'master',它应该可以工作。
    • 我明白了.. 安装的 gem 版本是 1.3.1 并且 Rails 正在寻找 v1.2.1 。在您的 environment.rb 文件中,添加这一行:config.gem 'crypt19-rb', :version => '1.3.1',如果该行已经存在,则将其替换为正确的版本号。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-15
    • 1970-01-01
    相关资源
    最近更新 更多