Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 缺少nokogiri gempec的Rails控制台错误,但nokogiri没有gempec_Ruby On Rails_Ruby_Nokogiri_Bundler - Fatal编程技术网

Ruby on rails 缺少nokogiri gempec的Rails控制台错误,但nokogiri没有gempec

Ruby on rails 缺少nokogiri gempec的Rails控制台错误,但nokogiri没有gempec,ruby-on-rails,ruby,nokogiri,bundler,Ruby On Rails,Ruby,Nokogiri,Bundler,我试图通过RVM重新安装Ruby 2.3.6以修复一些错误,其中我必须明确指定OpenSSL路径才能重新安装。在我的项目目录中安装bundler并运行bundle install后,我尝试运行rails c和bundle exec rails c,但出现以下错误: /Users/abhaskar/.rvm/gems/ruby-2.3.6@px-core/gems/bundler-1.16.1/lib/bundler/stub_specification.rb:97:in `_remote_spe

我试图通过RVM重新安装Ruby 2.3.6以修复一些错误,其中我必须明确指定OpenSSL路径才能重新安装。在我的项目目录中安装bundler并运行bundle install后,我尝试运行rails c和bundle exec rails c,但出现以下错误:

/Users/abhaskar/.rvm/gems/ruby-2.3.6@px-core/gems/bundler-1.16.1/lib/bundler/stub_specification.rb:97:in `_remote_specification': The gemspec for nokogiri-1.10.1 at /Users/abhaskar/.rvm/gems/ruby-2.3.6@px-core/specifications/nokogiri-1.10.1.gemspec was missing or broken. Try running `gem pristine nokogiri -v 1.10.1` to fix the cached spec. (Bundler::GemspecError)
然而,Nokogiri没有gempec,运行建议的gempristine命令并没有改变任何事情。我查过Nokogiri在我的档案里。我的团队成员中没有人面临同样的问题。如何诊断和解决此问题

更新:bundle exec gem pristine nokogiri-v 1.10.1出现以下错误:

ERROR:  While executing gem ... (Gem::Ext::BuildError)
ERROR: Failed to build gem native extension.

current directory: /Users/abhaskar/.rvm/gems/ruby-2.3.6/gems/nokogiri-1.10.1/ext/nokogiri
/Users/abhaskar/.rvm/rubies/ruby-2.3.6/bin/ruby -r ./siteconf20190130-46592-q2jdnm.rb extconf.rb
/Users/abhaskar/.rvm/rubies/ruby-2.3.6/lib/ruby/site_ruby/2.3.0/bundler/spec_set.rb:91:in `block in materialize': Could not find nokogiri-1.10.1 in any of the sources (Bundler::GemNotFound)

以下是我的强烈建议:在rvm上保释,然后转到docker。你每次都有一个干净的身材。不用担心在不同的项目之间混合系统库。等等


了解docker会有一点开销,但一旦了解了docker,您就可以自由运行任何版本的postgres/mysql/rails/ruby/which,并可以随意混搭。

您使用的是通过RVM安装的预期版本的ruby吗?这可能就是为什么gem pristine不起作用的原因…我怎么能检查呢?我需要运行bundle exec gem pristine吗?这可能值得一试。你似乎有一个很奇怪的例子。如果这不起作用,也可以尝试gem卸载。不幸的是,我回到了开始的地方,出现了同样的错误。