2014-12-29 2 views
0

Я делаю свой собственный сценарий мониторинга журнала с помощью ruby ​​и компилирую его с JRuby в JAR с помощью Warbler. Я запускаю JRuby 1.7.17 64bit. Я пытаюсь использовать камень optparse, который работает с МРТ и JRuby, когда я бегу сценарий как:JRuby gem недоступен, но JRuby все еще может запускать скрипт

monitor_log>] jruby lib\monitor_log\log_watch.rb --help 
Usage: log_watch [options] 
    -f, --file FILE     Input file to monitor 
    -p, --pattern PATTERN   Pattern to match in the file 
    -h, --help      Show this screen 

Так что я попытался запустить его с помощью JBundler, чтобы увидеть, если JRuby будет работать мой драгоценный камень,

monitor_log>] jbundle exec jruby bin/log_watch.rb --help 
Usage: log_watch [options] 
    -f, --file FILE     Input file to monitor 
    -p, --pattern PATTERN   Pattern to match in the file 
    -h, --help      Show this screen 

Итак, я попытался запустить это с помощью Warbler, чтобы скомпилировать его в JAR. и я получаю:

monitor_log>] warble executable jar 
warble aborted! 
Bundler::GemNotFound: Could not find gem 'optparse (>= 0) java' in the gems available on this machine. 
c:\Ruby\jruby-1.7.17\bin\warble:23:in `(root)' 
(See full trace by running task with --trace) 

Я подумал, что, может быть, JRuby не было это по умолчанию, так что я попытался так искать камень,

monitor_log>] jruby -S gem search optparse 
*** REMOTE GEMS *** 

micro-optparse (1.2.0) 
optparse-command (0.1.8) 
optparse-defaults (0.1.0) 
optparse-lite (0.0.0) 
optparse-off (0.0.1) 
optparse-pathname (0.0.1) 
optparse-range (0.0.3) 
optparse-simple (0.4.2) 
optparse_ex (0.0.4) 
pickled_optparse (0.1.1) 
remi-optparse-simple (0.1.0) 
rubysl-optparse (2.0.1) 
subcommand-optparse (0.0.3) 

но ничего реального очевидно не выделялся мне. Что-то я не делаю правильно? Я добавил gem, optparse в .gemspec как зависимость от разработки и зависимость времени выполнения. Должен ли я не делать этого или есть что-то еще, что мне не хватает?

ответ

0

Удаление

spec.add_development_dependency "optparse" 
spec.add_runtime_dependency "optparse" 

сделал трюк, и теперь камень компилирует в работоспособный файл JAR.

Смежные вопросы