rhc 设置给出错误“没有这样的文件 dl/import”
Posted
技术标签:
【中文标题】rhc 设置给出错误“没有这样的文件 dl/import”【英文标题】:rhc setup gives error `no such file dl/import` 【发布时间】:2015-05-07 22:29:06 【问题描述】:我正在安装 openshift 客户端工具,如下所述:https://developers.openshift.com/en/getting-started-windows.html#client-tools。 在“设置您的机器”步骤中出现错误:
rhc 设置 C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require' : 无法加载此类文件 -- dl/import (LoadError)
完整的堆栈跟踪:
C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require': cannot load such file -- dl/import (LoadError)
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/net-ssh-2.9.2/lib/net/ssh/authentication/pageant.rb:1:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/net-ssh-2.9.2/lib/net/ssh/authentication/agent/socket.rb:5:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/net-ssh-2.9.2/lib/net/ssh/authentication/agent.rb:22:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/net-ssh-2.9.2/lib/net/ssh/authentication/key_manager.rb:4:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/net-ssh-2.9.2/lib/net/ssh/authentication/session.rb:4:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/net-ssh-2.9.2/lib/net/ssh.rb:11:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/ssh_helpers.rb:18:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/wizard.rb:77:in `<class:Wizard>'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/wizard.rb:7:in `<module:RHC>'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/wizard.rb:6:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/commands/base.rb:4:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/commands/account.rb:2:in `<module:Commands>'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/commands/account.rb:1:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/commands.rb:189:in `block in load'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/commands.rb:188:in `each'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/commands.rb:188:in `load'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/lib/rhc/cli.rb:36:in `start'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.35.1/bin/rhc:20:in `<top (required)>'
from C:/Ruby22-x64/bin/rhc:23:in `load'
from C:/Ruby22-x64/bin/rhc:23:in `<main>'
我发现了同样的问题:https://groups.google.com/forum/#!topic/supmua/hPyTTamhTyc 建议将 DL 替换为 Fiddle。
我怎样才能开始工作 rhc?
【问题讨论】:
我不能也不会测试它,但尝试安装net-ssh-2.9.3.beta1。 This commit 增加了对小提琴的支持。 自从我 3 年前使用 Ruby 以来,没有什么能顺利使用它。由于版本问题,每次都会出现一些或其他错误。开班推荐安装最新!非常令人沮丧! 我无法理解。成功了,谢谢 它对我不起作用,尝试这里的所有建议;来自 ruby、net-ssh、较新、更新的旧版本...但我仍然无法使此设置正常工作。 我发现最新的 rhc 版本 1.38.4 声明了对 net-ssh 【参考方案1】:按照this comment 中建议的cremno 将net-ssh 更新到2.9.3.beta1,解决了我的问题。
gem install net-ssh -v 2.9.3.beta1
在此之前,我尝试过gem install net-ssh
,但没有帮助。
【讨论】:
我遇到了同样的问题。但是,你需要 GEM 安装 2.9.3beta1,而不是 2.5.3,所以命令应该是 gem install net-ssh -v 2.9.3.beta1 我已经更新到 2.9.3.beta1,尝试更新到 2.10.1.rc1。似乎没有任何帮助 =( 问题出在 Ruby 2.2.2 上。降级到 Ruby 到 2.1.6 和 net-ssh 到 2.9.2 Issue details in Github。即使 rhc 使用 2.9.3.beta1 安装,在 ssh 连接到应用程序时,它也不起作用。它会抱怨:Could not parse PKey: no start line 它对我不起作用 :( C:\>rhc setup C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:在require': cannot load such file -- dl/import (LoadError) from C:/Ruby22-x64/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_req uire.rb:54:in
require' ....来自 C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.38.4/bin/rhc:20:in @987654327 @load' 来自 C:/Ruby22-x64/bin/rhc:23:in `我在使用 OpenShift 设置说明中所述的最新版本 Ruby(当前为 2.2.1)时遇到了这个问题。我通过以下方式修复了它:
-
安装 Ruby 1.9.3
重新运行“gem install rhc”
之后,我可以毫无问题地运行“rhc setup”。
【讨论】:
gem install net-ssh -v 2.9.3.beta1 有效,无需重新安装 ruby 到旧版本 正如霍托所说, gem install net-ssh -v 2.9.3.beta1 有效。不要恢复到 1.9.3 net-ssh -v2.9.3beta1 在拍摄快照和尾部时会出错 同样的问题,我将 Ruby 从 2.2 降级到 1.9.3 并且它起作用了 我确认使用 ruby 1.9.3 的解决方案。我尝试使用最新的 2.2.x,但失败了。我卸载了它,安装程序 1.9.3,再次运行gem install rhc
,然后再次运行 rhc setup
,现在一切正常。【参考方案3】:
如果您运行的是 Windows 10 Pro x64,请尝试安装 Ruby
2.1.8 (x64) 和 Git Version 2.7.0。这肯定会让你运行rhc setup
,就像它发生在我身上一样。早些时候,我在运行和安装最新版本的Ruby 2.2.4 (x64)
时遇到问题,但是当我降级到 ruby 版本 2.1.8 (x64)
时,我能够在 Windows 上运行 rhc setup
并配置 OpenShift client tools
。查看我正在使用的 Ruby 版本的图片 - ruby 2.1.8p440 (2015-12-16 revision 53160) [x64-mingw32]
Read here 在 Windows 上开始使用OpenShift client tools
。
【讨论】:
这似乎可行,但我在运行设置时确实看到了$ rhc setup
--> DL is deprecated, please use Fiddle
。
这似乎失败了。当我转到$ rhc setup
时,我输入密码,按回车键,然后系统就挂在那里。没有错误信息,没有反馈,只是没有功能。来自 OpenShift 的整个 RHC 事情很糟糕。【参考方案4】:
使用 RHC 测试 Ruby 版本而不是最新版本。今天是1.9.3-p194
【讨论】:
你是怎么知道 RHC 测试的 ruby 版本的? 降级到版本 1.9.3-p194 对我有用。谢谢@reversiblean【参考方案5】:卸载 2,2,0 后尝试使用/安装较低版本的 ruby,因为某些 windows 版本与您正在使用的 ruby 版本冲突。我尝试了 2.2.3,然后降低到 2.2.0,它对我有用。
【讨论】:
【参考方案6】:我遇到了同样的错误,但没有一个解决方案对我有用。在最后一次尝试中,我安装了 Ruby 1.9.3-p551 版本,并且 rhc 设置很顺利。我使用的是 Windows 10 机器。
【讨论】:
【参考方案7】:我正在运行 Windows 10 Pro x64。我安装了 Ruby 2.1.8 (x64) 和 Git 版本 2.7.2。 rhc 安装成功。但是,“rhc snapshot save ...”命令对 net-ssh 有问题。但是,重新启动 Windows 10 后,错误消失了。
记得尝试重新启动您的 Windows。
【讨论】:
顺便说一句,我还必须将 ruby 移动到 C:(Windows 根驱动器)而不是 D: 驱动器(我的软件驱动器)。或 c: 用户驱动器。这很奇怪,但确实很重要。 我终于意识到这是因为我正在运行选美(腻子密钥管理)。这将导致“创建文件映射失败并出现错误:998 (Net::SSH::Exception)”。这与 C 盘或 D 盘或重新启动计算机无关。 (重新启动我的电脑将停止选美服务。以上是关于rhc 设置给出错误“没有这样的文件 dl/import”的主要内容,如果未能解决你的问题,请参考以下文章
Openshift:如何通过 RHC 或 SSH 将数据库导入 MySQL?