Gem sırasında çözülmemiş özellikler :: Specification.reset:


192

Guard'ı başlatırken şu çıktıyı alıyorum:

$ 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.

Bu ne anlama geliyor ve nasıl düzeltebilirim?

Guardfile içeriği:

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

1
Bunu da alıyorum ve nöbet bile yapmıyorum.
— Douglas G. Allen

RVM kullanıyorsanız bu yayın çok faydalıdır.
— GSYİH2

Yanıtlar:


274

Sadece RSpec'i kendi başına çalıştırarak bu sorunu görüyordum . Anladığım kadarıyla, bu, sisteminizde listelenen mücevherlerin birden fazla sürümünün yüklü olduğu ve RSpec'in hangisini kullanacağından emin olmadığı anlamına gelir. Taşların eski sürümünü kaldırdıktan sonra uyarılar ortadan kalktı.

Deneyebilirsin:

gem cleanup lumberjack

Veya:

gem list lumberjack

gem uninstall lumberjack

Bundler kullanıyorsanız, deneyebilirsiniz bundle exec guard(veya benim durumumda bundle exec rspec).


2
Beni doğru yola koydun. 'Gem temizleme' çalıştırırken hata alıyordum bu yüzden buldum: stackoverflow.com/questions/4007074/… RVM ile ilgili olduğu ortaya çıkıyor. 'Rvm gemset use global' yi çalıştırıp nöbetçi çalıştırdığımda hatalar ortadan kalktı.
— reneruiz

Rbenv kullanıyordum ve mücevher temizleme [gemname] benim için mükemmel çalıştı. Teşekkürler.
— Matt

3
Benzer bir sorunum vardı, paket güncellemesini çalıştırmak bunu çözdü
— mike

4
Sonra rvm gemset use global(ve gem cleanup <gemname>) ile varsayılan mücevherinize geri döndüğünüzden emin olunrvm gemset use default
— AlexChaffee

gem uninstall <problematic gem>Kullanmam gerekiyordu ama beni doğru yöne yönlendirdiğiniz için teşekkürler ve oy verin!
— aktiviteyi azaltmak

159

Aşağıdaki komutu kullanmak benim için çözdü:

bundle clean --force

Daha fazla bilgi için koruma ve çözülmemiş özelliklere bakın


1
Ben bu çözüme çarptım ve bu benim için yaptı kadar RVM ve Ruby yeniden yükleme de dahil olmak üzere bir sürü şey denedim.
— George

Dostum, testler yaparken Textmate 2'nin neden hata verdiğini anlamaya çalışırken birkaç saat harcadım. Bu durumu temizledi.
— Bakkal

Ben gerekiyordu su/ sudoo yazmaya çalışıyordu beri, bunu yapmak için /var/lib/gems. Bunun dışında - jekyll için çalışır.
— einpoklum

21

Bundler kullanın. Ara bundle exec guard, değil guard.


12

Bilginize:

gem cleanup

benim için çalıştı.

$ 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

Bu benim için çalıştı:

bundle clean --force

sonra

bundle install

taşlar yeniden.


6

Ben gem list gem-name; gem uninstall gem-namebağımlılık nedeniyle gem tek tek temizlemek için kullanın . Bundan sonra hata tekrar gösterilmez.


1

Ekle

'bundle exec'

emrinizden önce.

Ruby 2.4 kullanıyorum ve jekyll'i pencerelere dağıtırken aynı sorunu aldım, düzeltildi.


0

Kullanarak bir Guard eklenti mücevher içinde Rspec çalışırken bu mesajı alıyordum bundle exec rspec. gemspecDosyada eksik bir satır olduğu ortaya çıktı :

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

Bu satır normalde dosyanın üst kısmındadır (yakın zamanda çalıştığım değerli taşların çoğunda) ve nedenini görmek için yorum yapmıştım.


0

Eğer gardiyan kullanmak istiyorsanız, Gemfile'a mücevher muhafızı eklemeniz gerektiğini unutmayın.

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

O zaman koş

bundle install

umuyorum ki bu sana yardım edebilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.