0

sinatraアプリを歪ませてGlassfishにデプロイしました。私はbundlerを使用して依存関係を管理し、warblerはそれらのgemをWEB-INF/gemsディレクトリに含めました。

しかし、WEB-INFディレクトリからrakeタスクを実行しようとすると、そのタスクは実行されません。

gfish@server2:~/glassfish/domains/domain1/applications/sinatra_app/WEB-INF$ rake resque:work
(in /home/gfish/glassfish/domains/domain1/applications/sinatra_app/WEB-INF)
rake aborted!
Could not find gem 'sinatra (>= 0, runtime)' in any of the gem sources listed in your Gemfile.
/home/gfish/glassfish/domains/domain1/applications/sinatra_app/WEB-INF/Rakefile:5:in `(root)'
(See full trace by running task with --trace)

gfish@server2:~/glassfish/domains/domain1/applications/sinatra_app/WEB-INF$ **ls -l** gems/gems/
total 104
...
drwxr-xr-x 4 root root 4096 2011-02-24 14:38 sinatra-1.1.3
4

1 に答える 1

0

やっと見つけました。私はそれを行うために次のコードを使用しました。

# Add warbled gems to the $LOAD_PATH
if ENV['RACK_ENV'] == "production"
  puts "Adding warbled gems to the load path..."
  local_gems_path = Dir[File.expand_path(".") + "/gems/gems/*"]
  local_gems_path.each do |g|
    $LOAD_PATH.unshift "#{g}/lib/"
  end
end
于 2011-03-16T22:52:10.520 に答える