Я пытаюсь создать простой исполняемый файл войны, используя sinatra и warble. У меня есть простой файл lib / app.rb с:
require 'rubygems'
require 'sinatra'
class Hiwar < Sinatra::Application
get '/' do
body "Hi!"
end
end
файл config.ru с:
require 'rubygems'
require 'lib/app'
run Hiwar.new
и файл config / warble.rb с:
Warbler::Config.new do |config|
config.dirs = %w(config lib)
config.gems += ["sinatra","rack","rack-protection","tilt","jruby-openssl"]
end
Когда я выполняю:
$ warble executable war
Я получаю:
warble aborted!
Zip end of central directory signature not found
Tasks: TOP => war:files
(See full trace by running task with --trace)
Я видел, что если я удалю гем "jruby-openssl" из списка, он не будет жаловаться и создаст файл войны, но когда я его выполню, он выдаст ошибку 500:
undefined method `ssl?' for class `Sinatra::Request'
Есть ли более простой способ создать исполняемый файл с помощью sinatra?