Настройка rhc дає помилку `немає такого файлу dl / import`


158

Я встановлюю клієнтські інструменти openhift, як описано: 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: в "вимагаю": не вдається завантажити такий файл - 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?


12
Я не можу і не перевіряю його, але спробуйте встановити net-ssh-2.9.3.beta1 . Це зобов'язання додало підтримки для скрипки.
— cremno

1
З Рубі нічого не працювало так легко, з тих пір, як я використовував її 3 роки тому. Кожен раз, коли виникає та чи інша помилка через проблеми з версією. Відкрита зміна рекомендує встановлювати останню! Надзвичайно засмучує!
— Jus12

Я не можу зрозуміти Це спрацювало, спасибі
— Хіноторі

Мені це не вийшло, намагаючись з усіма запропонованими тут; старі версії від ruby, net-ssh, новіші, оновлені ..., але я все одно не можу зробити це налаштування.
— juagicre

Я дізнався, що остання версія rhc 1.38.4 оголошує залежність від net-ssh <= 2.9.2, тому він не хоче працювати з net-ssh-2.9.3.beta1. Я повернувся до rhc версії 1.37.1, яка успішно працювала за допомогою net-ssh-2.9.3.beta1.
— Олексій Корольов

Відповіді:


208

Оновлення net-ssh до 2.9.3.beta1, як запропонував cremno в цьому коментарі , вирішило мою проблему.

gem install net-ssh -v 2.9.3.beta1

До цього я намагався gem install net-ssh, але це не допомогло.


3
У мене було те саме питання. Однак вам потрібно встановити GEM 2.9.3beta1, а не 2.5.3, тому команда повинна бути gem встановити net-ssh -v 2.9.3.beta1
— Cryophallion

Я trqed оновити до 2.9.3.beta1, спробував до 2.10.1.rc1. Здається, нічого не допомагає = (
— dmigo

9
Проблема з Ruby 2.2.2. Зменшіться до Ruby до 2.1.6 та net-ssh до 2.9.2 Інформація про випуск у Github . Навіть якщо rhc встановлюється з 2.9.3.beta1, під час з'єднання ssh з додатком він не працюватиме. Він скаржиться на щось: Не вдалося розібрати PKey: немає стартової лінії
— Camilo Crespo

2
для мене це не спрацювало :( C: \> настройка rhc 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 вимагаю '..... .... від C: /Ruby22-x64/lib/ruby/gems/2.2.0/gems/rhc-1.38.4/bin/rhc: 20: в <t op (required)>' from C:/Ruby22-x64/bin/rhc:23:in навантаженні 'від C: / Ruby22-x64 / bin / rhc : 23: в `<головній> '
— Аеед Мохаммед Амін

3
Це не спрацювало для мене. Я встановив Ruby 1.9.3 і знову встановив Rhc, який працював.
— yelmu

49

Я зіткнувся з цією проблемою, коли використовував останню версію Ruby (наразі 2.2.1), як зазначено в інструкціях із налаштування OpenShift. Я виправив це:

  1. Встановлення Ruby 1.9.3
  2. Повторне запуску "gem install rhc"

Після цього мені вдалося запустити "Rhc setup" без жодних проблем.


4
gem install net-ssh -v 2.9.3.beta1 працює, не потрібно перевстановлювати рубін на старішу версію
— Анджей Реманн

як сказав Хото, gem install net-ssh -v 2.9.3.beta1 працює. не повертайтеся до 1.9.3
— ssi-anik

1
net-ssh -v2.9.3beta1 видасть помилку під час зйомки та хвоста
— user2473015

Тут же і питання, і я знизив Ruby з 2,2 до 1.9.3, і воно спрацювало
— Joy George Kunjikkuru

5
Я підтверджую рішення використання рубіну 1.9.3. Я спробував з останнім 2.2.x, і це не вдалося. Я його видалив, встановив 1.9.3, запустив gem install rhcще rhc setupраз і знову, і зараз все працює нормально.
— Шевдор

17

Якщо ви використовуєте Windows 10 Pro x64, спробуйте встановити Ruby 2.1.8 (x64) за допомогою Git Version 2.7.0 . Це напевно дозволить вам бігати так, rhc setupяк це сталося зі мною. Раніше у мене виникли проблеми із запуском та встановленням останньої версії, Ruby 2.2.4 (x64)але коли я перейшов на рубінову версію, 2.1.8 (x64)я зміг запустити rhc setupта налаштувати OpenShift client toolsв Windows. Дивіться зображення для версії Ruby, яку я використовую -ruby 2.1.8p440 (2015-12-16 revision 53160) [x64-mingw32]

введіть тут опис зображення

Прочитайте тут для початку роботи OpenShift client toolsз Windows.


Це, здається, працює, але я бачу $ rhc setup-> DL is deprecated, please use Fiddleколи я запускаю налаштування.
— zipzit

Це здається невдачею. Коли я заходжу, $ rhc setupя спускаюсь до того місця, коли я набираю свій пароль, натискаю return, тоді система просто висить там. Немає повідомлення про помилку, немає зворотного зв'язку, просто немає функції Вся ця річ RHC від OpenShift жахлива.
— zipzit

11

Використовуйте перевірену RHC версію Ruby замість найновішої. На сьогодні це 1.9.3-p194


звідки ви знали тестувану версію рубіну на RHC?
— Самі Омар

Перехід на версію 1.9.3-p194 працював у мене. Дякую @reversiblean
— blakroku

1

Спробуйте використовувати / встановити нижчу версію ruby ​​після видалення 2,2,0, оскільки деякі версії Windows суперечать версії ruby, яку ви використовуєте. Я спробував 2.2.3, а потім знизився до 2.2.0, і це працювало на мене.


1

Я зіткнувся з цією ж помилкою, і жодне з рішень не працювало на мене. В останній спробі я встановив версію Ruby 1.9.3-p551 і налаштування rhc пройшло без проблем. Я використовую машину Windows 10.


0

У мене працює Windows 10 Pro x64. Я встановив Ruby 2.1.8 (x64) з версією Git 2.7.2. Rhc було встановлено успішно. Однак команда "rhc snapshot save ..." мала проблему з net-ssh. Однак після перезавантаження Windows 10 помилок не було.

Не забудьте спробувати перезавантажити вікна.


До речі, мені також потрібно перемістити рубін на C: (root root drive) замість D: drive (мій програмний диск). АБО c: привід користувача. Це було дивно, але це мало значення.
— хосей

1
Нарешті я зрозумів, що це тому, що я виконую конкурс (керування ключами шпаклівки). Це призведе до "Невдалого створення карти файлів з помилкою: 998 (Net :: SSH :: Виняток)". Йшлося не про диск C або D, або перезавантаження комп'ютера. (Перезавантаження мого комп’ютера припинить показ конкурсу.
— hosais
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.