JRubyOnRails如何安裝配置

這篇文章將為大家詳細(xì)講解有關(guān)JRuby On Rails如何安裝配置,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

在資中等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供網(wǎng)站制作、成都網(wǎng)站制作 網(wǎng)站設(shè)計制作按需求定制網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都全網(wǎng)營銷,外貿(mào)營銷網(wǎng)站建設(shè),資中網(wǎng)站建設(shè)費用合理。

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

首先是安裝環(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

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

1,安裝RAILS,運行:

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

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

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

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

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

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

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

這里再補充一點,有的資料說要修改config/environment.rb,要添加

if RUBY_PLATFORM =~ /java/       require 'rubygems'       RAILS_CONNECTION_ADAPTERS = %w(jdbc)   end

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

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

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

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

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

在以下的位置:

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

添加:

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

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

jruby -S warble config

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

jruby -S warble war

把.war文件拷貝到TOMCAT的webapps下就可以運行了,但是會看到以下錯誤:

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)

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

<context-param>     <param-name>jruby.session_store</param-name>     <param-value>db</param-value>   </context-param>

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

關(guān)于“JRuby On Rails如何安裝配置”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

網(wǎng)站題目:JRubyOnRails如何安裝配置
網(wǎng)站鏈接:http://bm7419.com/article22/pcdecc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、、云服務(wù)器微信小程序、App開發(fā)定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司