2011-12-12 6 views
3

배포 상자에서 Tomcat 서버로 실행중인 JRuby 웹 앱을 사용하고 있습니다. Warble을 WAR 파일로 압축하고 JRuby가 설치된 서버에 배포하기 위해 Warble을 사용했습니다. 개발 상자와 배포 상자 모두에서 rbenv와 JRuby 1.6.4를 실행합니다.rbenv, JRuby, Warble, Rake

내 Gemfile은 다음과 같습니다

source 'http://rubygems.org' 
gem 'rails', '3.0.10' 
gem 'rake', '0.8.7' 
gem 'jquery-rails' 
gem 'rest-client', '~> 1.6.7' 


platforms :mri do 
gem 'mysql2', '~> 0.2.11' 
end 


platforms :jruby do 
gem 'jruby-openssl' 
gem 'activerecord-jdbcmysql-adapter' 
gem 'warbler' 
end 

내 사용자 정의 레이크 작업의 일부를 실행하고 싶습니다. (레일 서버)를 사용하는 개발 환경에서 레이크 작업을 실행할 때 rbenv를 사용하고 "레일 서버"가 JRuby 1.6.4를 호출하고 "번들 exec rake abc : 도움").

는 보석의 내 로컬 목록은 다음과 같습니다 앱이 톰캣에있을 때

[email protected]:~/abc$ gem list --local 

*** LOCAL GEMS *** 

abstract (1.0.0) 
actionmailer (3.0.10) 
actionpack (3.0.10) 
activemodel (3.0.10) 
activerecord (3.0.10) 
activerecord-jdbc-adapter (1.2.0) 
activerecord-jdbcmysql-adapter (1.2.0) 
activeresource (3.0.10) 
activesupport (3.0.10) 
arel (2.0.10) 
bouncy-castle-java (1.5.0146.1) 
builder (2.1.2) 
bundler (1.0.21) 
erubis (2.6.6) 
i18n (0.5.0) 
jdbc-mysql (5.1.13) 
jquery-rails (1.0.16) 
jruby-jars (1.6.4) 
jruby-openssl (0.7.4) 
jruby-rack (1.0.10) 
json (1.6.1 java) 
mail (2.2.19) 
mime-types (1.16) 
polyglot (0.3.2) 
rack (1.2.4) 
rack-mount (0.6.14) 
rack-test (0.5.7) 
rails (3.0.10) 
railties (3.0.10) 
rake (0.9.2, 0.8.7) 
rdoc (3.11) 
rest-client (1.6.7) 
rubyzip (0.9.4) 
thor (0.14.6) 
treetop (1.4.10) 
tzinfo (0.3.30) 
warbler (1.3.2) 
[email protected]:~/abc$ 

바람둥이 * (Tomcat에서 폭발 된) 별도의 상자에, 나는 ABC를 웹 어플리케이션을 이동///

[email protected]:~.../webapps/abc/WEB-INF$ bundle exec rake bcp:help --trace 
rake aborted! 
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb) 
/home/jgodse/.rbenv/versions/jruby-1.6.4/lib/ruby/gems/1.9/gems/rake-0.8.7/lib/rake.rb:2377:in `raw_load_rakefile' 
/home/jgodse/.rbenv/versions/jruby-1.6.4/lib/ruby/gems/1.9/gems/rake-0.8.7/lib/rake.rb:2017:in `load_rakefile' 
/home/jgodse/.rbenv/versions/jruby-1.6.4/lib/ruby/gems/1.9/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling' 
/home/jgodse/.rbenv/versions/jruby-1.6.4/lib/ruby/gems/1.9/gems/rake-0.8.7/lib/rake.rb:2016:in `load_rakefile' 
/home/jgodse/.rbenv/versions/jruby-1.6.4/lib/ruby/gems/1.9/gems/rake-0.8.7/lib/rake.rb:2000:in `run' 
/home/jgodse/.rbenv/versions/jruby-1.6.4/lib/ruby/gems/1.9/gems/rake-0.8.7/lib/rake.rb:2068:in `standard_exception_handling' 
/home/jgodse/.rbenv/versions/jruby-1.6.4/lib/ruby/gems/1.9/gems/rake-0.8.7/lib/rake.rb:1998:in `run' 
/home/jgodse/.rbenv/versions/jruby-1.6.4/lib/ruby/gems/1.9/gems/rake-0.8.7/bin/rake:31:in `(root)' 
org/jruby/RubyKernel.java:1073:in `load' 
/home/jgodse/.rbenv/versions/jruby-1.6.4/lib/ruby/gems/1.9/bin/rake:19:in `(root)' 
[email protected]:~.../webapps/abc/WEB-INF$ 

내 지역의 보석 목록 (레일 응용 프로그램은 WAR 파일로 배포) 배포 상자에 다음과 같습니다 루트 디렉토리에, 나는 다음과 같은 얻을.

[email protected]:~/webapps/abc/WEB-INF$ gem list --local 
abstract (1.0.0) 
actionmailer (3.0.10) 
actionpack (3.0.10) 
activemodel (3.0.10) 
activerecord (3.0.10) 
activerecord-jdbc-adapter (1.2.0) 
activerecord-jdbcmysql-adapter (1.2.0) 
activeresource (3.0.10) 
activesupport (3.0.10) 
arel (2.0.10) 
bouncy-castle-java (1.5.0146.1) 
builder (2.1.2) 
bundler (1.0.21) 
erubis (2.6.6) 
i18n (0.5.0) 
jdbc-mysql (5.1.13) 
jquery-rails (1.0.16) 
jruby-jars (1.6.4) 
jruby-openssl (0.7.4) 
jruby-rack (1.0.10) 
json (1.6.1 java) 
mail (2.2.19) 
mime-types (1.17.2, 1.16) 
polyglot (0.3.2) 
rack (1.2.4) 
rack-mount (0.6.14)  
rack-test (0.5.7) 
rails (3.0.10) 
railties (3.0.10) 
rake (0.9.2.2, 0.8.7) 
rdoc (3.11) 
rest-client (1.6.7) 
rubyzip (0.9.4) 
thor (0.14.6) 
treetop (1.4.10) 
tzinfo (0.3.30) 
warbler (1.3.2) 
[email protected]:~/webapps/abc/WEB-INF$ 

내 레이크 작업이 분해 된 WAR 파일 디렉토리를 모두 사용하지 못하게하려면 어떻게해야합니까?

또한 0.9.2가 나를 슬프게했기 때문에 Rake 0.8.7을 사용하고 있습니다.

답변

2

Warbler에는 기본적으로 Rakefile이 포함되어 있지 않으므로 config/warble.rb에 추가해야합니다. 파일이 없으면 warble config을 사용하여 파일을 생성하십시오.

+1

#이 작업을 수행해야합니까? config.includes FileList [ "./ Rakefile"] –

+0

감사합니다. Nick. 그랬어. –