JRuby Errno::ECONNREFUSED: Connection refused
Nun endlich war es so weit: ich versuchte es auch einmal mit JRuby. Beim Versuch, erste Gems zu installieren, bekam ich aber den hier:
quantino:~# jruby -S gem update --system
Updating RubyGems
ERROR: http://gems.rubyforge.org/ does not appear to be a repository
ERROR: While executing gem ... (Gem::RemoteFetcher::FetchError)
Errno::ECONNREFUSED: Connection refused - Connection refused (http://gems.rubyforge.org/yaml)
Ich ließ es links liegen und wandte mich anderen Dingen zu. Später am selben Tag versuchte ich das WebOS-Docor-JAR zum Verarzten meines Palm Pre zu starten, welches erst einmal eine Verbindung ins Welt Weite Netz suchte -- Verbindung fehlgeschlagen.
Da musste es einen Zusammenhang geben! Und den gibt es: es sind nicht die Proxy-Einstellungen, wie lange vermutet, sondern seit einem nicht besonders lange zurück liegenden System-Upgrade (Debian unstable/experimental) muss folgender Parameter der JVM mit übergeben werden, sofern man sein System nicht für IPv6 eingerichtet hat:
-Djava.net.preferIPv4Stack=true
JRuby reicht Kommandozeilen-Parameter hinter -J an die JVM weiter, aus obigem Kommando wird demnach:
quantino:~# jruby -J-Djava.net.preferIPv4Stack=true -S gem update --system
Updating RubyGems
Nothing to update
Um die -J Option nicht ständig angeben zu müssen, tut es auch ein
export JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true"
in ~/.bashc
Und damit läuft die Sache dann auch.