Когда я включаю созданный мной самоцвет, благодаря Bundler (версия 1.0.12), в Gemfile, а затем пытаюсь объединить или сгребать просто так:
$ rake
У меня такое сообщение об ошибке:
Invalid gemspec in [/Users/zagzag/.rvm/gems/ruby-1.9.2-p180@foobar/specifications/myplugin-1.0.0.gemspec]: invalid date format in specification: "2011-04-21 00:00:00.000000000Z"
Я использую последнюю Mac OS X (10.6.4) с:
$ ruby -v
ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.4.0]
а также:
$ gem -v
Invalid gemspec in [/Users/zagzag/.rvm/gems/ruby-1.9.2-p180@foobar/specifications/myplugin-1.0.0.gemspec]: invalid date format in specification: "2011-04-21 00:00:00.000000000Z"
1.7.2
Я действительно не понимаю, как решить эту проблему. Спасибо за любые идеи.
rubygems
bundler
ruby-1.9
ruby-1.9.2
Заг заг ..
источник
источник
Ответы:
Вот как я исправляю ошибку «неверный формат даты в спецификации»:
1.) Перейдите в папку спецификаций, расположенную по адресу:
/usr/local/lib/ruby/gems/1.8/specifications/
2.) Найдите спецификацию, которая вызывает проблему.
3.) Изменить
s.date = %q{2011-05-21 00:00:00.000000000Z}
наs.date = %q{2011-05-21}
Для меня это ВЫИГРЫШ! Удачи
источник
Вот команда, чтобы исправить это для всех ваших драгоценных камней:
Он преобразуется
s.date = %q{2011-05-21 00:00:00.000000000Z}
вs.date = %q{2011-05-21}
и должен решить вашу проблему.источник
git init . && git commit -am "backup
Обратите внимание на комментарий Дамиана Новака. Эти команды могут испортить ваши рубиновые камни!
В Ubuntu 11.10 эта ошибка была решена следующим образом:
Следующее может работать в некоторых системах, но не в Debian:
источник
Вы можете обновить свой
gem
. Чтобы исправить это, вы можете редактироватьgemspec
файл напрямую - изк
Или также обновите свои рельсы
Это решит проблему.
источник
specifications
каталоге, это мойspecifications
путь к каталогу -/home/sayuj/.rvm/gems/ruby-1.9.2-p180/specifications/
Не указывайте время ... только дату.
2011-04-21
должно работать нормально.источник
git ls-files
.split ("\ n ") s.test_files =git ls-files -- {test,spec,features}/*
.split (" \ n ") s.require_paths = [" lib "] endБыла такая же проблема. Похоже на ошибку в rubygems. Вот фиксация, которая исправила это: https://github.com/rubygems/rubygems/commit/21cccd55b823848c5e941093a615b0fdd6cd8bc7
Вам необходимо обновить rubygems и бандлер до последних версий. Если после этого у вас все еще возникают проблемы, возможно, вам придется удалить, а затем переустановить все драгоценные камни, которые вызывают проблемы.
источник
Это больше комментарий к ответу бена холла, но у меня пока нет такой привилегии.
обновления драгоценного камня, похоже, не работали, я думаю, он даже не может загрузить драгоценный камень из-за неправильного формата даты. ручное изменение дат было слишком неприятным, чтобы идти по одной, поэтому grep:
И для sed:
И на свой страх и риск !! Я все еще новичок в sed, но у меня это сработало;)
источник
На моем сервере slicehost папка спецификаций находилась в другом месте. Вот путь:
/usr/lib/ruby/gems/1.8/specifications
В сообщении об ошибке должен быть указан путь к папке спецификаций.
источник
Подход дробовика: удалите все драгоценные камни и перезапустите сборщик.
gem list --no-version | xargs gem uninstall -aIx
rm -i `rvm gemdir`/specifications/*.gemspec
gem update --system
gem install bundler
bundle install
источник
.rvmrc
файл, будьте осторожны с запуском строки 2, потому что gemdir может произвести дополнительный вывод.(Пока исправление ошибки не попадет в стабильный выпуск Rubygems) Я решил его, переустановив ту же версию всех гумов, генерирующих предупреждения, с помощью переключателя --version команды gem.
источник
Как сказал Бен Холл, вы должны исправить файл gemspec, который может меняться от системы к системе. Чтобы узнать, что это за файл, посмотрите, какой файл указан в отчете об ошибке, например:
В этом примере вы должны отредактировать файл «/var/lib/gems/1.8/specifications/svn2git-2.1.2.gemspec» и заменить «2011-12-28 00: 00: 00.000000000Z» на «2011-12-28». в с.дате вариант.
источник
Была эта проблема до сих пор. Обновление Rubygems решило эту проблему:
источник
Это моя среда:
Наконец-то мне удалось найти причину / способ предотвратить эти ошибки в моей системе. Я просто перехожу на огурец и огурцы версии 1.0.2. Использование последних версий делал это ...
источник
Даже если вы устанавливаете последнюю версию гема с допустимым форматом даты, обязательно сделайте это
gem cleanup GEMNAME
позже, посколькуgem
все равно будут жаловаться на спецификации для более старых библиотек.источник
Переустановка драгоценных камней может быть решением во многих из этих немного разных состояний машины.
В моем случае:
В моем случае другие более креативные решения не увенчались успехом.
Моя проблема
Invalid gemspec
возникала при попытке использовать коконады. Яgem install cocoapods
снова побежал, и все было радужно.источник