有没有其他方法可以绕过错误的需求YAML::Syck::DefaultKey错误,然后升级RubyGems?
我在[path/to/vendor/bundle/spree_api-1.0.0.gemspec]中得到了有没有其他方法可以绕过错误的需求YAML::Syck::DefaultKey错误,然后升级RubyGems?,ruby,rubygems,gemspecs,Ruby,Rubygems,Gemspecs,我在[path/to/vendor/bundle/spree_api-1.0.0.gemspec]中得到了无效的gemspec:Illformed requirement[“#1.0.0”]用于几个gem(所有spree及其spree_*需求)。我已经向这两个spree报告了这个问题(我怀疑,他们改变了他们的构建路线;还有hoster site5,他们有一个过时的RubyGems版本,1.6.2) 关于stackoverflow,我们有解决方案,但没有一个适用于我 我不能使用RVM升级到其他版本
无效的gemspec:Illformed requirement[“#1.0.0”]
用于几个gem(所有spree及其spree_*需求)。我已经向这两个spree报告了这个问题(我怀疑,他们改变了他们的构建路线;还有hoster site5,他们有一个过时的RubyGems版本,1.6.2)
关于stackoverflow,我们有解决方案,但没有一个适用于我
public
文件夹中的.htaccess
访问gem更新--system
,因为这需要sudo,而我没有sudo这是不是可以通过在我的开发机器上打包宝石来解决?我没有遇到这个问题,除了RubyGems版本,我的开发机器安装了完全相同的Ruby版本(在那里我可以很好地使用rvm)。到现在为止,您可能已经找到了解决这个问题的方法,但是如果您有写更改的权限,这里有一个黑客方法可以解决这个问题
cd/path/to/vendor/bundle/
并在文本编辑器中打开spree_api-1.0.0.gempec
删除任何显示
的地方,并将其替换为=
保存它,返回Rails应用程序目录并运行
bundle install
我通过使用GEM文件中的:git=>'some/git/url'
成功地解决了这个问题;bundler可以正确地处理gem。尽管如此,我仍然对这个错误背后的原因非常感兴趣。