Probleme beim Starten von Snorby / Ruby-Abhängigkeitsproblem

Probleme beim Starten von Snorby / Ruby-Abhängigkeitsproblem

Ich versuche, Snorby auf einem CentOS 6.6-Rechner zu installieren und habe immer wieder ein Problem mit Ruby und meiner Gemfile. Ich glaube, ich muss entweder meine Gemfile bearbeiten oder es hat etwas mit einem Installationspfad zu tun. Ich wäre für jede Hilfe sehr dankbar.

bundle exec rake snorby:setup

Fehlermeldung

Die Gemspec /var/www/html/snorby/vendor/bundle/ruby/1.9.1/bundler/gems/snorby_cas_authenticatable-/devise_cas_authenticatable.gemspecist nicht gültig. Der Validierungsfehler war

duplicate dependency on devise (>= 1.0.6), (>= 0) use:
add_runtime_dependency 'devise', '>= 1.0.6', '>= 0'

Antwort1

Ich habe es zum Laufen gebracht, indem ich die Abhängigkeit 1.0.6 in der Gemspec-Datei devise_case_authenticable /usr/local/rvm/gems/ruby-1.9.3-p551/bundler/gems/snorby_cas_authenticatable-281a58b36368/devise_cas_authenticatable.gemspec hinzugefügt habe:

if s.respond_to? :specification_version then
    s.specification_version = 3
    if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
      s.add_runtime_dependency(%q<devise>, [">= 0"])
      s.add_development_dependency(%q<ruby-debug>, [">= 0"])
      s.add_development_dependency(%q<jeweler>, [">= 0"])
      **s.add_runtime_dependency(%q<devise>, [">= 1.0.6"])**
      s.add_runtime_dependency(%q<rubycas-client>, [">= 2.2.1"])
    else
      s.add_dependency(%q<devise>, [">= 0"])
      s.add_dependency(%q<ruby-debug>, [">= 0"])
      s.add_dependency(%q<jeweler>, [">= 0"])
      **s.add_dependency(%q<devise>, [">= 1.0.6"])**
      s.add_dependency(%q<rubycas-client>, [">= 2.2.1"])
    end
  else
    s.add_dependency(%q<devise>, [">= 0"])
    s.add_dependency(%q<ruby-debug>, [">= 0"])
    s.add_dependency(%q<jeweler>, [">= 0"])
    **s.add_dependency(%q<devise>, [">= 1.0.6"])**
    s.add_dependency(%q<rubycas-client>, [">= 2.2.1"])
  end
end

und dann ändern

gem 'devise_cas_authenticatable',  :git => 'https://github.com/Snorby/snorby_cas_authenticatable.git'

in der Snorby-Gemfile im Snorby-WWW-Stammverzeichnis nach

gem 'devise_cas_authenticatable'

Ich vermute, dass dies nur nach einem einzigen Fehlschlag funktioniert, sodass das devise_cas_authenticable-Gem installiert ist

Antwort2

Das hat bei mir nicht funktioniert, stattdessen bin ich zu der Datei gegangen, die Sie erwähnt haben:

/usr/local/rvm/gems/ruby-1.9.3-p551/bundler/gems/snorby_cas_authenticatable-281a58b36368/devise_cas_authenticatable.gemspec

Aber hier habe ich diese drei Zeilen kommentiert:

if s.respond_to? :specification_version then
    s.specification_version = 3
    if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
      #####s.add_runtime_dependency(%q<devise>, [">= 0"])
      s.add_development_dependency(%q<ruby-debug>, [">= 0"])
      s.add_development_dependency(%q<jeweler>, [">= 0"])
      s.add_runtime_dependency(%q<devise>, [">= 1.0.6"])
      s.add_runtime_dependency(%q<rubycas-client>, [">= 2.2.1"])
    else
      #####s.add_dependency(%q<devise>, [">= 0"])
      s.add_dependency(%q<ruby-debug>, [">= 0"])
      s.add_dependency(%q<jeweler>, [">= 0"])
      s.add_dependency(%q<devise>, [">= 1.0.6"])
      s.add_dependency(%q<rubycas-client>, [">= 2.2.1"])
    end
  else
    #####s.add_dependency(%q<devise>, [">= 0"])
    s.add_dependency(%q<ruby-debug>, [">= 0"])
    s.add_dependency(%q<jeweler>, [">= 0"])
    s.add_dependency(%q<devise>, [">= 1.0.6"])
    s.add_dependency(%q<rubycas-client>, [">= 2.2.1"])
  end
end

Hat danach gut geklappt.

verwandte Informationen