我在 rake 中有一个运行我的服务器 sinatra 的任务,它不起作用,而 ruby 中的相同脚本可以工作。为什么 ??我可以在 rake 任务中运行服务器 sinatra 吗??
task :server do
begin
require 'rubygems'
require 'sinatra'
rescue LoadError
p "first install sinatra using:"
p "gem install sinatra"
exit 1
end
get '/:file_name' do |file_name|
File.read(File.join('public', file_name))
end
exit 0
end
最佳答案
创建一个从 Sinatra::Base 类继承的类
#app.rb
require 'sinatra'
class TestApp < Sinatra::Base
get '/' do
"Test"
end
end
然后从 rake 运行您的应用程序:
#Rakefile
$:.unshift File.join(File.dirname(__FILE__), ".")
require 'rake'
require 'app'
task :server do
TestApp.run!
end
关于ruby - 任务 rake 问题, ruby ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5393002/