我在网上找遍了都没有答案。有人知道如何在Jupyter notebook中使用ruby gems吗?我试了require'byebug'
和require 'pry'
,没有用。
当我尝试require 'byebug'
时,我得到这个错误:
***无源文件可用于(pry)
当我尝试require 'pry'
时,出现以下错误:
From:(pry)@ line 923 Object#divide:
我使用的是本地笔记本,当然不是云版本。
编辑:我甚至尝试在需要byebugx 1 m4n1x时设置绝对路径。
2条答案
按热度按时间ktca8awb1#
我也有这个问题。我遇到这个问题是因为我用ruby-2.3.0安装了iruby,内核崩溃了,因为我没有所需的gem rbczmq。长话短说,我不得不安装Ruby版本2. 3. 3并复制我的gemset,并确保Iruby注册了我正在使用的正确版本。
1.检查你使用的是什么版本的ruby
rvm list
在这里你需要仔细检查你使用的是你认为你可以用rvm use ruby-x.x.x
更改为正确的版本。1.一旦你决定了一个ruby版本,检查你使用的宝石。
rvm gemset list
会告诉你什么是可用的。1.使用
gem list
确保gem在您正在使用的gem集中。记住每一个宝石都是全新的,当你安装一个新的ruby版本时,它们不会自动被复制。1.(可选)复制您使用
rvm gemset copy ruby-2.3.0 ruby-2.3.3
的gemset,或者您可以只安装您想要的gem。1.确保Jupyter(Iruby)使用的是正确的版本。同样,它可以在不同的版本中查看,在这种情况下,宝石实际上不在该宝石组中。使用
iruby notebook
启动笔记本,在新标签下检查它应该有你期望的ruby版本,如果没有,你需要退出iruby,运行iruby register --force
,然后再试一次。这对我很有效,希望能有帮助。
oug3syen2#
确保您想要的gem在shell/环境中是可访问的,在那里您启动comand 'jupyter notebook',因为它将继承那个Ruby环境(即使您已经通过iruby register注册了Ruby版本)
以bundle为例。
如果你有不同的rbenv/rvm和不同的gemset,在那个环境下启动的jupyter notebook只会看到那个专用的gemset。这类似于jupyter在不同的conda环境下启动。