2011-12-09 14 views
3

jrubyをロードする実行可能なjarがあります。インストーラはjarファイルといくつかのpre-jarbyライブラリといくつかの宝石を含むパッケージライブラリをインストール場所にドロップします。jrubyをロードする実行可能なjarファイルが、プログラムファイルなどの名前にスペースを含むフォルダで実行されないのはなぜですか?

jarが名前にスペースを含むフォルダにインストールされている場合を除いて、すべてWindows上を除いて正常に動作します。 Jrubyは、jarパッケージ化された宝石のうちの1つ(「statemachine gem」の中で「シングルトンを必要とする」)からシンプルな「要求」が出たときに失敗します。

これは大した問題ではないでしょうが、プログラムファイルの下で実行するにはjarファイルが必要です。それはおそらくバグだ

> Java::OrgJrubyExceptions::RaiseException - no such file to load -- 
> singleton file:/C:/<install 
> location>/lib/java/state_machine-0.9.4.jar!/state_machine/matcher.rb:1: 
> in `require': no such file to load -- singleton (LoadError) 
>   from file:/C:/<install location>/lib/java/state_machine-0.9.4.jar!/state_machine/ 
> matcher.rb:1 
>   from file:/C:/<install location>/lib/java/state_machine-0.9.4.jar!/state_machine/ 
> matcher.rb:1:in `require' 
>   from file:/C:/<install location>/lib/java/state_machine-0.9.4.jar!/state_machine/ guard.rb:1 
>   from file:/C:/<install location>/lib/java/state_machine-0.9.4.jar!/state_machine/ 
> guard.rb:2:in `require' 
>   from file:/C:/<install location>/lib/java/state_machine-0.9.4.jar!/state_machine/ event.rb:2 
>   from file:/C:/<install location>/lib/java/state_machine-0.9.4.jar!/state_machine/ 
> event.rb:6:in `require' 
>   from file:/C:/<install location>/lib/java/state_machine-0.9.4.jar!/state_machine/ 
> machine.rb:6 
>   from file:/C:/<install location>/lib/java/state_machine-0.9.4.jar!/state_machine/ 
> machine.rb:1:in `require' 
>   from file:/C:/<install location>/lib/java/state_machine-0.9.4.jar!/state_machine. rb:1 
>   from file:/C:/<install location>/lib/java/state_machine-0.9.4.jar!/state_machine. rb:1:in 
> `require' 
>   from src/application.rb:1:in `require' 
>   from src/main.rb:54:in `require' 
>   from <script>:1 
>   ...internal jruby stack elided... 
>   from Kernel.require(file:/C:/<install location>/lib/java/state_machine-0.9.4.jar! 
> /state_machine/matcher.rb:1) 
>   from (unknown).(unknown)(file:/C:/<install location>/lib/java/state_machine-0.9.4 
> .jar!/state_machine/matcher.rb:1) 
>   from Kernel.require(file:/C:/<install location>/lib/java/state_machine-0.9.4.jar! /state_machine/guard.rb:1) 
>   from (unknown).(unknown)(file:/C:/<install location>/lib/java/state_machine-0.9.4 .jar!/state_machine/guard.rb:2) 
>   from Kernel.require(file:/C:/<install location>/lib/java/state_machine-0.9.4.jar! /state_machine/event.rb:2) 
>   from (unknown).(unknown)(file:/C:/<install location>/lib/java/state_machine-0.9.4 .jar!/state_machine/event.rb:6) 
>   from Kernel.require(file:/C:/<install location>/lib/java/state_machine-0.9.4.jar! 
> /state_machine/machine.rb:6) 
>   from (unknown).(unknown)(file:/C:/<install location>/lib/java/state_machine-0.9.4 
> .jar!/state_machine/machine.rb:1) 
>   from Kernel.require(file:/C:/<install location>/lib/java/state_machine-0.9.4.jar! /state_machine.rb:1) 
>   from (unknown).(unknown)(file:/C:/<install location>/lib/java/state_machine-0.9.4 .jar!/state_machine.rb:1) 
>   from Kernel.require(src/application.rb:1) 
>   from Kernel.require(src/main.rb:54) 
>   from Kernel.require(<script>:1) 
>   from (unknown).(unknown)(:1) 

答えて

0

:そこに期待している誰かが、この:)

スタックトレースを解決しました。実行可能なjarを作成するためにどのようなソフトウェアを使用しましたか? JRubyのどのバージョン?私たちは過去にファイル名のついたバグを扱ってきましたが、確かに他のバグがある可能性があります。 http://bugs.jruby.orgにバグを報告できますか?ありがとう。

+0

Jrubyのバージョンは1.5.xです。 jrubyバージョンに向けて私を指摘してくれてありがとう。それは調査を開始するのに良い場所のように思えます。おかげでニック。 –

関連する問題