在Ruby中捆绑gem加载错误

时间:2018-03-05 01:52:29

标签: ruby rubygems jekyll

在从头开始学习Jekyll / Ruby的同时尝试为Jekyll安装theme时,我搞砸了。现在,只要执行from bs4 import BeautifulSoup from selenium import webdriver driver = webdriver.Firefox() url = 'http://maps.3dhubs.com/' driver.get(url) html = driver.page_source soup = BeautifulSoup(html, "lxml") suppliers = soup.find_all("div", class_="leaflet-popup-pane") print (suppliers) driver.quit() ,我就会收到错误消息。谁知道如何解决?

bundle

网络中的错误有很多提及,但答案/建议一般缺乏一致性。

我继续前进

  1. $ bundle -v /usr/local/bin/bundle:23:in `load': cannot load such file -- /usr/lib/ruby/gems/2.3.0/gems/bundler-1.16.1/exe/bundle (LoadError) from /usr/local/bin/bundle:23:in `<main>'
  2. 已删除apt-get --purge autoremove ruby
  3. /var/lib/gems/
  4. apt-get install ruby
  5. apt-get install ruby-dev
  6. 但问题仍然存在。

    问题可能类似于this,有类似的解决方案吗?

    一些相关信息:

    gem install jekyll

    运行ubuntu 16.04。

3 个答案:

答案 0 :(得分:2)

试试这个$ gem update --system 2.7.4

答案 1 :(得分:1)

Kalpeshdav的答案(指定版本号)似乎在很多情况下都有效,建议在github等周围的各个地方使用。

但是,我遇到了几次失败的尝试。我的处境基本上是,我在不同目录中运行了不同的jekyll站点,以及也基于Ruby和Bundle / Bundler的其他静态站点应用程序(如Hugo和https://github.com/slatedocs/slate)。

在最近的情况下,当我运行“ bundle exec jekyll serve”和“ bundle install”时,都收到此错误消息。我尝试删除并重新安装捆绑器并更新了gem,但对我来说都不起作用。然后我意识到,我的本地Gemfile.lock文件以某种方式确定了我的bundle命令的运行方式。因此,我将Gemfile.lock移到了直接位于外部的备份位置,然后重新运行捆绑包安装。那行得通,我随后能够运行“捆绑执行程序jekyll服务”。

答案 2 :(得分:1)

有时与特定版本捆绑的 Gemfile.lock 需要此版本。我打开 Gemfile.lock 并将 BUNDLED WITH 版本设置为我更新的打包器,一切顺利。