У меня проблема с выполнением jruby из оболочки mingw git bash в windows.Я скачал установщик Windows для Jruby 1.6.2 и запустил его без проблем.Если я открою новую оболочку Windows CMD, кажется, работает нормально.Я установил грабли и камни синатры;использовал ИКР.входя в jruby -v получает:
jruby 1.6.2 (ruby-1.8.7-p330) (2011-05-23 e2ea975) (Java HotSpot(TM) Client VM 1.6.0_24) [Windows 7-x86-java]
Однако, когда я открываю оболочку git mingw bash и пытаюсь что-нибудь сделать с jruby, я получаю эту ошибку:
Exception in thread "main" java.lang.NoClassDefFoundError: org/jruby/Main
Caused by: java.lang.ClassNotFoundException: org.jruby.Main
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: org.jruby.Main. Program will exit.
Я убедилсячто каталог jruby lib находится в пути к классам.
Есть еще идеи?
ОБНОВЛЕНИЕ: Я думаю, что проблема заключается в сценариях оболочки, которые в конечном итоге вызывают jar вКаталог jruby bin.
Проблема заключается в том, что хотя msys может преобразовывать пути POSIX в Win для большинства вещей, но скрипт создает собственные строки для передачи пути к классам и другой информации в jar.
Похоже, что здесь все запутано.Сценарии специально имеют ветви кода, которые имеют дело с cygwin по той же причине.Я попытался заставить сценарии думать, что он работает под управлением cygwin, но, к сожалению, сценарии используют программу «cygpath» для получения путей, которая недоступна в msys