Spesifikasi yang tidak terselesaikan selama Gem :: Spesifikasi.reset:


192

Saat meluncurkan Guard, saya mendapatkan output ini:

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

Apa artinya ini, dan bagaimana cara memperbaikinya?

Isi dari Guardfile:

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

1
Saya mendapatkan ini juga dan bahkan tidak lari penjaga.
Douglas G. Allen

Posting ini sangat membantu jika Anda menggunakan RVM.
GDP2

Jawaban:


274

Saya melihat masalah ini dengan menjalankan RSpec sendiri. Dari apa yang saya mengerti, ini berarti bahwa Anda memiliki lebih dari satu versi permata yang terdaftar terpasang di sistem Anda, dan RSpec tidak yakin yang mana yang akan digunakan. Setelah menghapus versi permata yang lebih lama, peringatan itu hilang.

Anda dapat mencoba:

gem cleanup lumberjack

Atau:

gem list lumberjack

gem uninstall lumberjack

Jika Anda menggunakan Bundler, Anda dapat mencoba bundle exec guard(atau dalam kasus saya bundle exec rspec).


2
Anda menempatkan saya di jalur yang benar. Saya mendapatkan kesalahan ketika menjalankan 'gem cleanup' jadi saya menemukan ini: stackoverflow.com/questions/4007074/... Ternyata itu ada hubungannya dengan RVM. Ketika saya menjalankan 'rvm gemset use global' dan menjalankan guard, kesalahan hilang.
reneruiz

Saya menggunakan rbenv dan pembersihan permata [gemname] bekerja untuk saya dengan sempurna. Terima kasih.
Matt

3
Saya memiliki masalah yang sama, menjalankan pembaruan bundel menyelesaikannya
mike

4
Setelah rvm gemset use global(dan gem cleanup <gemname>) pastikan untuk kembali ke gemset default Anda denganrvm gemset use default
AlexChaffee

Saya perlu menggunakan gem uninstall <problematic gem>tetapi terima kasih dan upvote untuk mengarahkan saya ke arah yang benar!
Mengurangi aktivitas

159

Menggunakan perintah berikut ini memecahkannya untuk saya:

bundle clean --force

Lihat spesifikasi penjaga dan tidak terselesaikan untuk info lebih lanjut


1
Saya sudah mencoba banyak hal, termasuk menginstal ulang RVM dan Ruby, sampai saya menemukan solusi ini dan ini berhasil untuk saya.
George

Sobat, saya membuang waktu beberapa jam untuk mencari tahu mengapa Textmate 2 mengalami kesalahan ketika saya menjalankan tes. Ini membersihkannya.
Grocery

Saya perlu su/ sudountuk melakukan ini, karena sedang mencoba menulis /var/lib/gems. Selain itu - bekerja untuk jekyll.
einpoklum


12

FYI:

gem cleanup

bekerja untukku.

$ 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

Ini bekerja untuk saya:

bundle clean --force

kemudian

bundle install

untuk menginstal ulang permata.


6

Saya gunakan gem list gem-name; gem uninstall gem-nameuntuk membersihkan permata satu per satu karena ketergantungan. Setelah itu, kesalahan tidak muncul lagi.


1

Menambahkan

'bundle exec'

sebelum perintahmu.

Saya menggunakan ruby ​​2.4 dan mendapat masalah yang sama ketika menggunakan jekyll di windows, itu diperbaiki.


0

Saya menerima pesan ini saat menjalankan Rspec di dalam permata plugin Guard, menggunakan bundle exec rspec. Ternyata ada baris yang hilang di gemspecfile:

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

Baris ini biasanya di bagian atas file (di banyak permata saya baru-baru ini bekerja di) dan saya telah berkomentar untuk melihat mengapa.


0

Ingat, jika Anda ingin menggunakan pelindung, Anda harus menambahkan pelindung permata ke Gemfile.

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

Lalu lari

bundle install

Saya harap ini dapat membantu Anda.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.