自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

JRuby On Rails安裝配置詳解

開(kāi)發(fā) 后端
本文向你介紹JRuby On Rails安裝配置的過(guò)程,包括JRuby On Rails安裝環(huán)境的配置,Rails的安裝、config文件的修改等。

最近安裝了Jruby On Rails,發(fā)現(xiàn)網(wǎng)上雖然有很多資料可以參考,但是由于各種組件的不斷更新,很多資料已經(jīng)過(guò)時(shí),容易產(chǎn)生誤導(dǎo),在這里介紹一下我個(gè)人的安裝經(jīng)過(guò),供大家參考.

首先是安裝環(huán)境,不同的軟件版本可能導(dǎo)致不同的安裝結(jié)果.我使用的環(huán)境是:

JDK------------------1.6.0_06
TOMCAT--------------6.0.16
MYSQL---------------5.0.22
JRUBY---------------1,1
RAILS----------------2.0.2
WARBLER------------0.9.5

接下來(lái)開(kāi)始安裝,JDK,TOMCAT,MYSQL的安裝就不說(shuō)了,別忘了配置JAVA_HOME環(huán)境變量.
接下來(lái)解壓JRUBY,將JRUBY_HOME指向解壓后的文件路徑,CLASSPATH指向該路徑的LIB.接下來(lái)轉(zhuǎn)到JRUBY的BIN路徑下,開(kāi)始以下的安裝;

1,安裝RAILS,運(yùn)行:

  jruby gem install rails -r -y --no-ri --no-rdoc

2,安裝Rails框架的數(shù)據(jù)庫(kù)接口和MYSQL適配器,運(yùn)行:

  jruby gem install activerecord-jdbc-adapter -r -y --no-ri --no-rdoc
  jruby gem install activerecord-jdbcmysql-adapter -r -y --no-ri --no-rdoc

這里要說(shuō)明一下,有些資料說(shuō)要安裝ActiveRecord-JDBC,其實(shí)ActiveRecord-JDBC和activerecord-jdbc-adapter是同一種東西,只是名字換了,版本不同,ActiveRecord-JDBC的版本是0.5,activerecord-jdbc-adapter現(xiàn)在是0.8.另外因?yàn)榘惭b了activerecord-jdbcmysql-adapter,所以java語(yǔ)言MySQL數(shù)據(jù)庫(kù)接口軟件包就不用下載安裝了.

以上的模塊安裝完畢就可以創(chuàng)建一個(gè)RAILS工程了,例如:jruby -S rails demo

隨后修改config/database.yml,像是這樣:

  adapter: jdbcmysql
  hostname: localhost
  database: test
  username: root
  password:

這里再補(bǔ)充一點(diǎn),有的資料說(shuō)要修改config/environment.rb,要添加

  1. if RUBY_PLATFORM =~ /java/   
  2.     require 'rubygems'   
  3.     RAILS_CONNECTION_ADAPTERS = %w(jdbc)   
  4. end  

其實(shí)這項(xiàng)修改是針對(duì)RAILS2.0以前的版本的,現(xiàn)在的2.0.2已經(jīng)不用改了.這一點(diǎn)在activerecord-jdbc-adapter的文檔有說(shuō)明.

以上設(shè)置完畢就可以啟動(dòng)WEBrick運(yùn)行RAILS程序了.下面再說(shuō)說(shuō)RAILS程序如何部署到TOMCAT中.Goldspike已經(jīng)稍顯陳舊了,現(xiàn)在我們可以使用更好的warbler.在JRUBY的BIN路徑下運(yùn)行:

  jruby gem install warbler -r -y --no-ri --no-rdoc

這樣warbler就安裝好了,接下來(lái)如果在RAILS工程下打包,是可以生成.war文件的,但是放在TOMCAT下跑會(huì)有問(wèn)題,原因是因?yàn)閣arbler沒(méi)有把數(shù)據(jù)庫(kù)連接的內(nèi)容打到包里去.其實(shí)這也不是warbler的BUG,warbler無(wú)法知道用戶連接何種數(shù)據(jù)庫(kù)以及用什么方式連接,所以你需要自己配一下,修改

jruby-1.1\lib\ruby\gems\1.8\gems\warbler-0.9.5\generators\warble\templates\warble.rb文件,

在以下的位置:

  1. # config.gems = ["activerecord-jdbc-adapter", "jruby-openssl"]   
  2. # config.gems << "tzinfo"   
  3. # config.gems["rails"] = "1.2.3"   

添加:

  %w{jdbc-mysql activerecord-jdbcmysql-adapter activerecord-jdbc-adapter}.each{|g| config.gems << g}

注意,上面的warble.rb其實(shí)并不是warbler打包的配置文件,它是一個(gè)生成配置文件的模板文件,要生成配置文件須要到RAILS工程路徑下運(yùn)行:

  jruby -S warble config

這時(shí)你在工程路徑下config文件夾會(huì)找到一個(gè)warble.rb,這才是warbler打包的配置文件.上面的添加內(nèi)容你也可以不在模板文件中添加,而是直接在這里添加.這一步完成后就可以打包了,運(yùn)行:

  jruby -S warble war

把.war文件拷貝到TOMCAT的webapps下就可以運(yùn)行了,但是會(huì)看到以下錯(cuò)誤:

Rails Error: No :secret given to the #protect_from_forgery call. Set that or use a session store capable of generating its own keys (Cookie Session Store)

解決的對(duì)策是編輯該工程的web.xml文件,添加以下內(nèi)容

  1. <context-param>   
  2.   <param-name>jruby.session_store</param-name>   
  3.   <param-value>db</param-value>   
  4. </context-param>  

以上的修改也可以在模板文件jruby-1.1\lib\ruby\gems\1.8\gems\warbler-0.9.5\web.xml.erb中進(jìn)行,這樣就不用每次都要修改工程的web.xml文件了.現(xiàn)在一切正常了.

 

【編輯推薦】

  1. JRuby性能優(yōu)化的四點(diǎn)建議
  2. 如何在tomcat上配置jruby on rails
  3. JRuby是什么? JRuby語(yǔ)言概覽
  4. JRuby中調(diào)用java帶可變參數(shù)的方法
  5. 使用JRuby生成JVM代碼
責(zé)任編輯:佚名 來(lái)源: JavaEye
相關(guān)推薦

2009-07-17 16:17:04

在tomcat上配置j

2009-07-09 15:58:40

Ubuntu JDK安

2010-09-10 20:19:34

tftp server

2009-07-20 15:37:26

JRuby安裝JRuby配置

2009-09-17 13:32:48

WSUS服務(wù)器

2010-03-11 13:54:01

Python安裝配置

2017-01-05 21:55:11

WindowsNano Server遠(yuǎn)程管理

2017-01-05 15:07:59

2017-01-05 22:28:16

WindowsNano Server部署

2009-07-17 17:11:47

Ruby生成JVM代碼

2014-07-30 13:37:15

ubuntu14.04bochs

2011-02-25 17:48:52

2010-06-07 11:22:28

2009-09-17 16:50:23

WSUS服務(wù)器

2010-11-11 09:06:38

Linux集群LVS

2011-02-23 10:43:17

2011-03-02 10:41:41

Vsftpd安裝

2011-04-01 15:00:35

2011-04-02 14:21:46

MRTG安裝

2010-05-18 09:07:14

Subversion安
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)