J'essaie d'accéder à ma machine virtuelle Ubuntu par SSH afin de l'utiliser comme interpréteur distant pour RubyMine v5.0.1. Cependant, chaque fois que je m'authentifie avec succès et que je pointe vers mon emplacement ruby, l'interpréteur distant n'est pas ajouté. L'écran ne donne aucun message d'erreur, ce qui signifie que je suis en mesure d'accéder à l'interpréteur ruby.
Dans les fichiers journaux de RubyMine, je vois cette information :
Executing ssh command: env "JETBRAINS_REMOTE_RUN"="1" "PATH"="/usr/local/bin:$PATH" "RM_INFO"="RM-125.65" /usr/local/bin/ruby --disable-gems -e "puts $:" for administrator@192.168.1.250:22
2013-02-19 00:32:49,705 [ 35465] INFO - emote.RubyRemoteProcessHandler - processWillTerminate():null
2013-02-19 00:32:49,707 [ 35467] ERROR - plication.impl.ApplicationImpl - sdk home directory must not bee null (Remote:ruby-1.9.3-p362: 1.9.3 (ssh://administrator@192.168.1.250:22/usr/local/bin/ruby))
java.lang.AssertionError: sdk home directory must not bee null (Remote:ruby-1.9.3-p362: 1.9.3 (ssh://administrator@192.168.1.250:22/usr/local/bin/ruby))
at org.jetbrains.plugins.ruby.ruby.sdk.RubySdkUtil.unCygwinizePath(RubySdkUtil.java:348)
at org.jetbrains.plugins.ruby.ruby.sdk.RubySdkType.buildSdkLoadpath(RubySdkType.java:396)
at org.jetbrains.plugins.ruby.ruby.sdk.RubySdkType$1.run(RubySdkType.java:326)
at org.jetbrains.plugins.ruby.ruby.sdk.RubySdkType$2.run(RubySdkType.java:362)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$5.run(ProgressManagerImpl.java:297)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$TaskRunnable.run(ProgressManagerImpl.java:501)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$6.run(ProgressManagerImpl.java:310)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$2.run(ProgressManagerImpl.java:191)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:232)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:181)
at com.intellij.openapi.application.impl.ApplicationImpl$8$1.run(ApplicationImpl.java:689)
at com.intellij.openapi.application.impl.ApplicationImpl$6.run(ApplicationImpl.java:462)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:722)
at com.intellij.openapi.application.impl.ApplicationImpl$1$1.run(ApplicationImpl.java:152)
2013-02-19 00:32:49,711 [ 35471] ERROR - plication.impl.ApplicationImpl - JetBrains RubyMine 5.0 Build #RM-125.65
2013-02-19 00:32:49,711 [ 35471] ERROR - plication.impl.ApplicationImpl - JDK: 1.7.0_10
2013-02-19 00:32:49,711 [ 35471] ERROR - plication.impl.ApplicationImpl - VM: Java HotSpot(TM) Client VM
2013-02-19 00:32:49,711 [ 35471] ERROR - plication.impl.ApplicationImpl - Vendor: Oracle Corporation
2013-02-19 00:32:49,711 [ 35471] ERROR - plication.impl.ApplicationImpl - OS: Windows 8
2013-02-19 00:32:49,712 [ 35472] ERROR - plication.impl.ApplicationImpl - Last Action: EditorLineStart
2013-02-19 00:32:49,713 [ 35473] INFO - esdk.transport.JschExecProcess - Executing ssh command: env "JETBRAINS_REMOTE_RUN"="1" "PATH"="/usr/local/bin:$PATH" "RM_INFO"="RM-125.65" /usr/local/bin/ruby /home/administrator/.rubymine_helpers/rb/exec_with_work_dir.rb /usr/local/bin /usr/local/bin/ruby -x /usr/local/bin/gem environment gempath for administrator@192.168.1.250:22
2013-02-19 00:32:49,926 [ 35686] INFO - emote.RubyRemoteProcessHandler - processWillTerminate():null
2013-02-19 00:32:49,928 [ 35688] ERROR - com.intellij.ide.IdeEventQueue - Error during dispatching of java.awt.event.MouseEvent[MOUSE_RELEASED,(47,48),absolute(1498,233),button=1,modifiers=Button1,clickCount=1] on win0
java.lang.AssertionError: sdk home directory must not bee null (Remote:ruby-1.9.3-p362: 1.9.3 (ssh://administrator@192.168.1.250:22/usr/local/bin/ruby))
A part la mauvaise orthographe du mot be
la chose qui me saute aux yeux est ce message d'erreur
sdk home directory must not bee null
Cependant, je ne suis pas sûr de la nature ou de l'endroit où il attend le sdk. Je ne suis pas sûr du sdk qu'il attend. Comme mes serveurs Ruby on Rails sont hébergés sous Linux, je voulais vraiment utiliser l'interpréteur Ruby sous Linux plutôt que sous Windows. (Les gems sont plus agréables à utiliser lorsque l'application est développée sur la même plateforme que le serveur, c'est-à-dire rmagick, carrierwave, etc.)
Que dois-je faire pour compléter cette connexion et utiliser l'interpréteur ruby de mon installation de serveur de développement Ubuntu virtualisé.
Malheureusement, je ne peux pas utiliser Ubuntu comme système d'exploitation principal car je me réfère souvent à des applications basées sur Windows qui fonctionnent mieux sur le système d'exploitation natif.
EDIT
Ils ont publié une mise à jour RubyMine 5.0.2 qui résout ce problème. Elle est disponible à partir de 3/4/2013.