LinuxとWindows(NetBeans)でRailsプロジェクトを共有する

やりながらメモ。

Linux側の状況

emacs + Rinariで開発。各ソフトウェアのバージョンは以下のとおり(カッコ内はバージョンを調べるコマンド)。

Windows XP SP3へのNetBeans IDE 6.7.1のインストール

ja:NetBeansからダウンロード。今回はRuby on Railsでの開発だけを考慮するのでRuby版をインストール。

インストールのやり方はかんたんRuby on RailsでWebアプリケーション開発を参考に行う。NetBeansのインストール時点でJRubyRailsがインストールされているが、上述の書籍では別途Rubyのインストールからはじめていたのでそちらに従う。

Ruby Forge:One-Click Installer - Windowsをインストール。ダウンロードしてダブルクリックをしたらインストールは始まる(途中でRuby Gemsもインストールするか聞かれるので「Enable Rubygems」をチェックすること)。特に指定しなければC:\Rubyにインストールされる。

RubyGemsのアップデートをする。「Ruby Gems Package Manager」を起動する。(「スタート」→「すべてのプログラム」→「Ruby-xxx-xx」→「Ruby Gems」→「Ruby Gems Package Manager」)

% gem install rubygems-update
% update_rubygems

2009年11月4日現在、RubyGems 1.3.5となった。

Ruby on Raisのインストールを行う。

% gem install rails

2009年11月4日現在、Rails 2.3.4がインストールされる。

次にSQLite3をインストールする。SQLite3:Downloadから「Precompiled Binaries For Windows」のsqlitedllをダウンロードする。2009年11月4日現在はsqlitedll-3_6_19.zip。ダウンロードしたものを解凍し、sqlite3.dllとsqlite3.defをC:\Ruby\bin以下にコピーする。

次にsqlite3-rubyRubyGems経由でインストールする。「Ruby Gems Package Manager」を起動し、ターミナルで以下のコマンドを入力。

% gem install sqlite3-ruby

2009年11月4日現在、Warningが出まくる。

まず、Java SE Development Kit (JDK) 5 Update 19 (version 1.5.0_19) 以降 (JDK 6 Update 14 を含む) がインストールされているかどうかをチェックする(「スタート」→「コントロールパネル」→「プログラムの追加と削除」でチェック)。

Ruby用のNetBeansja:NetBeansからダウンロード。私は、Rubyをインストールする前にNetBeansをインストールしていたので、デフォルトのRubyプラットフォームがJRubyになっていた。2009年11月2日時点では、インストール終了後のソフトウェアのバージョンは以下のとおり(括弧内はNetBeansを立ち上げたあとにどこを見れば確認できるかを表している)。

これを先にインストールしたRubyに変える。「ツール」→「Ruby プラットフォーム」で「プラットフォームの追加」でRubyを追加する(C:\Ruby\bin\ruby.exeを選ぶ)。一応、JRubyをプラットフォームから削除しておく。

また、「ツール」→「RubyGems」を開き、Gems関連のインストール済みファイルを更新しておく。2009年11月2日時点では、ruby-opennglの60.0から60.1への更新がうまくいかなかった。とりあえず無視。

動作確認

ちゃんと動くか、新規プロジェクトを作成してみる。

  1. NetBeansを立ち上げる
  2. 「ファイル」→「新規プロジェクト作成」
  3. Ruby on Railsアプリケーション」を選択して「次へ」
  4. プロジェクト名を「railscheck」にして「次へ」
  5. データベースアダプタを「sqlite3」にして「次へ」
  6. 「完了」をクリック
  7. プロジェクト名の「railscheck」にカーソルを合わせて右クリック→「生成」
  8. ジェネレーターを「scaffold」、モデルを「person」、属性ペアを「person:string age:integer」として「了解」をクリック
  9. プロジェクト名の「railscheck」にカーソルを合わせて右クリック→「実行」
  10. Webブラウザで http://localhost:3000/people にアクセスし、名前と年齢の入力ができたらNetBeansRails、SQLite3のインストールはうまく行っている。

Linuxで動いてたプロジェクトの移行

Subversionで管理していたので、TotoriseSVNを使ってプロジェクトをチェックアウト。その後、NetBeansを立ち上げて、「ファイル」→「新規プロジェクト作成」→「既存のソースを利用したRuby on Railsプロジェクト」を選び、Linuxから持ってきたプロジェクトをインポート。

その後、WebRickを立ち上げようとするも「Webサーバに接続できませんでした。http://localhost:3000/を表示できません。」というエラーメッセージがでてWebRickが立ち上がらない。

Linux側のRailsプロジェクトのバージョンをNetBeans側にあわせたら無事に動いた。これで、Subversionを通じて、Linuxemacs + Rinari)とWindows側(NetBeans)で協調して開発できる。よかった。