У меня есть приложение Sinatra, которое я создал, и я хотел бы упаковать его как основанный на драгоценном камне двоичный файл.
У меня есть свой gemspec и драгоценный камень, настроенный для генерации подходящего исполняемого файла, который указывает на my_sinatra_app.rb
(который является исполняемым файлом), но sinatra сервер никогда не работает. Какие-либо идеи, почему и как заставить его работать?
my_sinatra_app
исполняемый файл:
#!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
#
# This file was generated by RubyGems.
require 'rubygems'
version = ">= 0"
if ARGV.first =~ /^_(.*)_$/ and Gem::Version.correct? $1 then
version = $1
ARGV.shift
end
gem 'my_sinatra_app', version
load Gem.bin_path('my_sinatra_app', 'my_sinatra_app', version)
Обнаружено: D
Вам нужно обернуть ваше приложение Sinatra в такой класс:
class MySinatraApp < Sinatra::Application
# Stuff
end
Затем в файле, который запускает приложение, вы можете просто выполнить MySinatraApp.run!
Просто :)