2013-04-29 3 views
0

Я проверяю новую фиксацию в репо, которая работает для всех остальных. Я запускаю команду rake, которая вызывает этот код и выдает ошибку undefined, хотя Gem.source_index, как представляется, определяется.Rake task изредка терпит неудачу, неопределенная ошибка

module Gem 
    puts "in module Gem" 
    def self.source_index=(index) 
    puts "defining the source index" 
    @@source_index = index 
    end 
end 

module Rails 
    class GemDependency < Gem::Dependency 
    attr_accessor :lib, :source, :dep 

    def self.add_frozen_gem_path 
     puts "Oh hi there" 
     puts "the source index is " + Gem.source_index // ERROR HERE 
    end 

Выход

in module Gem 
Oh hi there 
rake aborted! 
undefined method `source_index' for Gem:Module 

Что случилось?

ответ

1

Gem.source_index был устарел в Ruby 1.9 и удален в Ruby 2.0 *. Я подозреваю, что теперь вы используете Ruby 2.0, что даст вам точную ошибку.

Обратите внимание, что вы определяете для него сеттер, но не получателя.

(* Технически это, вероятно, связано с определенной версией Rubygems, а не Ruby. 1.9.3 установка с модернизированной установки Rubygems составит одно и то же.)

+1

Это сработало! Я сделал 'rvm list', а затем' rvm use ree-1.8.7-2012.02' –

Смежные вопросы