Ungelöste Spezifikationen während Gem :: Specification.reset:


192

Beim Starten von Guard erhalte ich folgende Ausgabe:

$ guard
WARN: Unresolved specs during Gem::Specification.reset:
      lumberjack (>= 1.0.2)
      ffi (>= 0.5.0)
WARN: Clearing out unresolved specs.
Please report a bug if this causes problems.

Was bedeutet das und wie behebe ich es?

Inhalt von Guardfile:

guard 'livereload' do
    watch(%r{.+\.(css|js|html)$})
end
guard 'sass', :input => 'css', :style => :compressed, :extension => '.min.css'

1
Ich bekomme das auch und laufe nicht einmal Wache.
— Douglas G. Allen

Dieser Beitrag ist sehr hilfreich, wenn Sie RVM verwenden.
— GDP2

Antworten:


274

Ich habe dieses Problem festgestellt, indem ich RSpec alleine ausgeführt habe. Soweit ich weiß, bedeutet dies, dass Sie mehr als eine Version der aufgelisteten Edelsteine ​​auf Ihrem System installiert haben und RSpec nicht sicher ist, welche Sie verwenden sollen. Nach der Deinstallation einer älteren Version der Edelsteine ​​verschwanden die Warnungen.

Du kannst es versuchen:

gem cleanup lumberjack

Oder:

gem list lumberjack

gem uninstall lumberjack

Wenn Sie Bundler verwenden, können Sie es versuchen bundle exec guard(oder in meinem Fall bundle exec rspec).


2
Du hast mich auf den richtigen Weg gebracht. Beim Ausführen von " Gem Cleanup" wurden Fehler angezeigt , daher fand ich Folgendes : stackoverflow.com/questions/4007074/… Es stellte sich heraus, dass dies mit RVM zu tun hatte. Als ich "rvm gemset use global" und "guard" ausführte, verschwanden die Fehler.
— Reneruiz

Ich habe Rbenv verwendet und Gem Cleanup [Gemname] hat perfekt für mich funktioniert. Vielen Dank.
— Matt

3
Ich hatte ein ähnliches Problem, das durch das Ausführen des Bundle-Updates behoben wurde
— Mike

4
Nach rvm gemset use global(und gem cleanup <gemname>) stellen Sie sicher, dass Sie mitrvm gemset use default
— AlexChaffee

Ich musste es benutzen, gem uninstall <problematic gem>aber danke und positiv, dass du mich in die richtige Richtung gelenkt hast!
— Reduzierung der Aktivität

159

Mit dem folgenden Befehl wurde es für mich gelöst:

bundle clean --force

Siehe Wacht und ungelöste-Spezifikationen für weitere Informationen


1
Ich habe eine Menge Dinge ausprobiert, einschließlich der Neuinstallation von RVM und Ruby, bis ich auf diese Lösung gestoßen bin und dies für mich getan hat.
— George

Mann, ich habe ein paar Stunden damit verbracht herauszufinden, warum Textmate 2 beim Ausführen von Tests fehlerhaft war. Dies löschte es aus.
— Lebensmittelgeschäft

Ich musste su/ musste dies sudotun, da es versuchte zu schreiben /var/lib/gems. Davon abgesehen - funktioniert für Jekyll.
— Einpoklum

21

Verwenden Sie Bundler. Rufen Sie bundle exec guardnicht an guard.


12

Zu Ihrer Information:

gem cleanup

arbeitete für mich.

$ gem cleanup       

Cleaning up installed gems...
Attempting to uninstall builder-3.2.2
Successfully uninstalled builder-3.2.2
Attempting to uninstall amatch-0.3.0
Successfully uninstalled amatch-0.3.0
Attempting to uninstall tins-1.12.0
Successfully uninstalled tins-1.12.0
Clean Up Complete

9

Das hat bei mir funktioniert:

bundle clean --force

dann

bundle install

Edelsteine ​​neu installieren.


6

Ich benutze, gem list gem-name; gem uninstall gem-nameum den Edelstein nacheinander wegen der Abhängigkeit zu reinigen. Danach wird der Fehler nicht mehr angezeigt.


1

hinzufügen

'bundle exec'

vor deinem Befehl.

Ich benutze Ruby 2.4 und habe das gleiche Problem beim Bereitstellen von Jekyll unter Windows, es wurde behoben.


0

Ich habe diese Nachricht erhalten, als ich Rspec in einem Guard-Plugin-Gem ausgeführt habe bundle exec rspec. Es stellte sich heraus, dass eine Zeile in der gemspecDatei fehlte :

$:.push File.expand_path("../lib", __FILE__)

Diese Zeile befindet sich normalerweise oben in der Datei (in vielen der Edelsteine, an denen ich kürzlich gearbeitet habe), und ich hatte sie auskommentiert, um zu sehen, warum.


0

Denken Sie daran, wenn Sie Guard verwenden möchten, müssen Sie Gemfile Gem Guard hinzufügen.

group :developement, :test do
  gem 'guard'
end

Dann renne

bundle install

Ich hoffe das kann dir helfen.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.