Posted by cnruby Mon, 02 Apr 2007 18:50:00 GMT

Rails框架技术讲座:没有NetBeans使用JRuby运行环境

目录

 (一)系统环境:

  1. 操作系统Windows XP
  2. 安装Java语言开发环境Sun JDK 6.0,下载链接请点击这里
  3. 在Windows XP上安装Linux核心命令,点击这里
  4. 需要一个浏览器,如FireFox1.5.0.1以上版本。
  5. 开发编辑工具 Notepad2 ,安装方法请单击这里,复制一个notepad2.exe,并且更名为vi.exe。
  6.  

 (二)前提条件:

  1. 假定你JDK 6.0安装目录是:D:\Programme\Java\jdk1.6.0,请设置系统环境变量如下:
    SET JAVA_HOME=D:\Programme\Java\jdk1.6.0
    SET DERBY_HOME=D:\Programme\Java\jdk1.6.0\db
    SET JRUBY_HOME=E:\coding\work_nbs\jruby-0.9.8
    SET PATH=%PATH%;%JAVA_HOME%\bin;%DERBY_HOME%\frameworks\embedded\bin
    SET CLASSPATH=%CLASSPATH%;%DERBY_HOME%\lib\derbyclient.jar;%DERBY_HOME%\lib\derby.jar
  2. 在Windows XP上使用嵌入式版本Derby
  3. 安装和配置NetBeans(视频)

 (三)目的:

  1. 在JRuby运行环境下,利用命令行来创建基于嵌入型数据库系统Derby的Rails框架应用软件。
  2. 本讲座的完整代码请您在Google Code Hosting上查看
    http://cnruby.googlecode.com/svn/trunk/jruby/jruby_use01
    或者下载:
    svn co http://cnruby.googlecode.com/svn/trunk/jruby/jruby_use01

 (四)解决方案:

  1. 借助于JRuby和Rails框架,创建可使用Java资源的Rails应用软件jruby_use01
    jruby --command rails jruby_use01
    cd jruby_use01
  2. 修改Rails框架的环境文件 environment.rb ,以便适应于JRuby语言环境。相关的修改内容请看下面命令清单
    vi config/environment.rb
  3. 修改数据库配置文件 database.yml,这里使用数据库Derby。
    vi config/database.yml
  4. 创建一个新数据库,注意下面的”ij>“是数据库系统Shell的提示符。
    ij
    ij>connect 'jdbc:derby:db/jrails;create=true;territory=zh_CN;user=root;password=daoxi';
    ij>exit
  5. 创建我们应用软件的数据库模型Lesson。
    jruby script/generate model Lesson
  6. 修改数据库模型的移植文件 001_create_lessons.rb ,关于Rails框架的数据库移植技术请看这里
    vi db/migrate/001_create_lessons.rb
  7. 创建我们的数据库表
    jruby --command rake db:migrate
  8. 使用Rails框架为我们的模型自动生成代码
    jruby script/generate scaffold Lesson admin
  9. 打开网络服务器WEBRick
    jruby script/server
  10. 退出数据库客户端
    http://127.0.0.1:3000/admin/list

 (五)视听教学:



 (六)必须注意的问题:

  1. 在执行命令jruby --command rake db:migrate时可能出现下面错误。请你通过NetBeans来更新JRuby及其相关软件。
    错误 "can't dup Fixnum" 
  2. 好像链接 http://127.0.0.1:3000/admin 无法访问。估计是JRuby软件本身的问题。
  3. JRuby软件要通过NetBeans 6.0 M7的Update Center及时和全部更新。

 (七)参考资料:



 (八)命令清单:

jruby --command rails jruby_use01
cd jruby_use01

vi config/environment.rb
[
if RUBY_PLATFORM =~ /java/
require 'rubygems'
RAILS_CONNECTION_ADAPTERS = %w(jdbc)
end
]

vi config/database.yml
[
development:
adapter: jdbc
driver: org.apache.derby.jdbc.EmbeddedDriver
url: jdbc:derby:db/jrails
username: root
password: daoxi

test:
development

production:
development
]

ij
connect 'jdbc:derby:db/jrails;create=true;territory=zh_CN;user=root;password=daoxi';
exit;

jruby script/generate model Lesson
vi db/migrate/001_create_lessons.rb
[
class CreateLessons < ActiveRecord::Migration
def self.up
create_table :lessons do |t|
t.column :title, :string
t.column :text, :string
end
end

def self.down
drop_table :lessons
end
end
]

jruby --command rake db:migrate
jruby script/generate scaffold Lesson admin
jruby script/server

 (九)下载文件pdf:



Posted in  | Tags , , , , ,