111 votes

Spécification du format de date non valide dans gemspec

J'obtiens l'erreur suivante lorsque j'essaie d'utiliser les gemmes sous Windows, et je me suis également référé à ce post de stackoverflow et mis à jour rubygems et rails. Mais rien n'a pu résoudre le problème.

Voici l'erreur complète,

    D:\\>gem env
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/tilt-1.3.3.gemspec\]: invalid date format in specification: "2011-08-25 00:00:00
.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/execjs-1.2.4.gemspec\]: invalid date format in specification: "2011-08-03 00:00:
00.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/temple-0.3.3.gemspec\]: invalid date format in specification: "2011-08-26 00:00:
00.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/guard-0.6.3.gemspec\]: invalid date format in specification: "2011-09-01 00:00:0
0.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/guard-livereload-0.3.1.gemspec\]: invalid date format in specification: "2011-09
-01 00:00:00.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/rack-cache-1.0.3.gemspec\]: invalid date format in specification: "2011-08-27 00
:00:00.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/tilt-1.3.3.gemspec\]: invalid date format in specification: "2011-08-25 00:00:00
.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/execjs-1.2.4.gemspec\]: invalid date format in specification: "2011-08-03 00:00:
00.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/temple-0.3.3.gemspec\]: invalid date format in specification: "2011-08-26 00:00:
00.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/guard-0.6.3.gemspec\]: invalid date format in specification: "2011-09-01 00:00:0
0.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/guard-livereload-0.3.1.gemspec\]: invalid date format in specification: "2011-09
-01 00:00:00.000000000Z"
Invalid gemspec in \[D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8/specifications
/rack-cache-1.0.3.gemspec\]: invalid date format in specification: "2011-08-27 00
:00:00.000000000Z"
RubyGems Environment:
  - RUBYGEMS VERSION: 1.7.2
  - RUBY VERSION: 1.8.7 (2011-06-30 patchlevel 352) \[i386-mingw32\]
  - INSTALLATION DIRECTORY: D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8
  - RUBY EXECUTABLE: D:/RailsInstaller/Ruby1.8.7/bin/ruby.exe
  - EXECUTABLE DIRECTORY: D:/RailsInstaller/Ruby1.8.7/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-mingw32
  - GEM PATHS:
     - D:/RailsInstaller/Ruby1.8.7/lib/ruby/gems/1.8
     - C:/Documents and Settings/jeygokul/.gem/ruby/1.8
  - GEM CONFIGURATION:
     - :update\_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk\_threshold => 1000
  - REMOTE SOURCES:
     - http://rubygems.org/

132voto

GaborKomaromi Points 1331

La solution ultime est la suivante :

Recherchez les fichiers "spec" dans votre répertoire Ruby : * C:\Ruby187\lib\ruby\gems\1.8\specifications *

Si un fichier gemspec contient quelque chose comme ceci : s.date = %q{2011-10-13 00:00:00.000000000Z } Ensuite, supprimez le 00:00:00.000000000Z partie : s.date = %q{2011-10-13}

Après avoir enregistré ces fichiers gemspec, le problème est résolu.

46voto

Romain Tribes Points 1322

Aucune de ces solutions n'a fonctionné pour moi. Pour le résoudre, j'ai supprimé tout le contenu du répertoire mentionné (some/path/to/specification/) puis j'ai installé les gems dont j'ai besoin (en fait, Bundler puis bundle install).

45voto

Michael Points 795

J'ai résolu ce problème en mise à jour de mes RubyGems vers 1.8.10 avec

gem update --system

Edit : Vous pouvez aussi essayer (comme suggéré par ZeissS)

gem install rubygems-update
update_rubygems

12voto

TheArtTrooper Points 511

En plus d'exécuter gem update --system J'ai utilisé gem install <gem with bad gemspec> sur chacun des items gem env signalés comme mauvais. Cela a nettoyé les erreurs sur ma machine.

10voto

wingfire Points 163

Comme Michael l'a dit dans le commentaire :

gem pristine --all

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X