プロジェクト

全般

プロフィール

NetBeansでプラグイン開発

Redmineのプラグイン開発をWindows PC + NetBeansIDE 6.8 + Ruby 1.8.7 + Redmine 0.9.3 + SQLite3で開発する手順です。

環境構築

Rubyのインストール

NetBeans付属のJRubyを使っても良いのですが、ここでは最新のRuby 1.8.7を使うことにします。
注) Redmine 0.9.3 はRuby 1.9.xでは動きません。1.8系の最新を使ってください。

WindowsにRuby 1.8.7をインストールする

SQLite3をインストールする。

SQLite3のサイト からsqlite3.dllをダウンロードします。
ダウンロードページ のsqlitedll-3_6_22.zipをダウンロードして開くと

  • sqlite3.def
  • sqlite3.dll

という2つのファイルがあるのでsqlite3.dllの方をC:\ruby\binにコピーします。
次に以下のコマンドを実行します。

C:\>gem install sqlite3-ruby

Redmineのインストール

プラグイン開発に使用するRedmineをインストールします。Redmineのダウンロードサイト からredmine-0.9.3.zipをダウンロードして展開します。ここでは例としてC:\直下に展開します。C:\redmine-0.9.3というフォルダができているはずです。

SQLite3を使う設定にする。

RedmineのDBとしてSQLite3を使う設定をします。C:\redmine-0.9.3\config\database.ymlというファイルを新規に作成し、以下の内容を記述します。

production:
  adapter: sqlite3
  database: db/redmine.db

development:
  adapter: sqlite3
  database: db/redmine_dev.db

test:
  adapter: sqlite3
  database: db/redmine_test.db

次に以下のコマンドを実行します。

C:\>cd C:\redmine-0.9.3
C:\redmine-0.9.3>rake db:migrate RAILS_ENV=development

エラーが表示されず、C:\redmine-0.9.3\db\redmine_dev.db というファイルができていれば完了です。

NetBeansIDEのインストール

NetBeansのサイト からNetBeansIDEをダウンロードします。ダウンロードページ には使用する機能によっていくつかのダウンロードパッケージがあります。「Ruby」 もしくは「すべて」をダンロードしてください。
ダウンロードしたファイルを実行するとインストールが始まります。質問に適当に答えてインストール完了です。

プロジェクト作成

NetBeansIDE上にRedmineのプラグイン開発用プロジェクトを作成します。

NetBeansIDEにRedmineのプラグイン開発用プロジェクトを作成

Redmine を起動する。

セッションデータの作成

最初の一回だけ以下の手順でセッションデータを作成する必要があります。
プロジェクトを右クリックし現れるメニューから「Rakeタスクを実行/デバッグ」を選択すると次の画面が現れます。

ここでconfig/initializers/sessions_store.rbを選択して実行します。

起動する。

プロジェクトを選択し、ツールバーの再生ボタンを押します。

するとRedmineが起動し、ブラウザが勝手に開いてRedmineの初期画面が表示されるはずです。

NetBeansIDE 下部の出力ウィンドウにはRedmineのコンソール出力が表示されます。

出力ウィンドウが無い場合にはメニューバーからウィンドウ→出力→出力と選ぶと表示されます。

停止

出力ウィンドウの左端にある停止ボタンを押すとRedmineを停止することができます。

プラグインを作る

では実際にNetBeansIDEからRedmineのプラグインを作ってみましょう。ここではプラグイン チュートリアルで説明しているPollプラグインを作ってみます。
NetBeansIDEからプラグインを作成する

デバッグする

準備

NetBeansIDEからRedmineをステップ実行したり実行中の変数を参照、変更したりすることができます。そのためには予めRubyに以下の2つのgemをインストールしておく必要があります。

  • ruby-debug-base
  • ruby-debug-ide

ただし普通にgemからインストールしようとするとWindows上では上手くいきません。以下の手順で行います。

ruby-debug-base

rubyforgeのダウンロードページ からlinecache-0.43-mswin32.gemをダウンロードします。そしてダウンロードしたlinecache-0.43-mswin32.gemをgemでインストールします。

C:\tmp>gem install -l linecache-0.43-mswin32.gem
Successfully installed linecache-0.43-x86-mswin32
1 gem installed
Installing ri documentation for linecache-0.43-x86-mswin32...
Installing RDoc documentation for linecache-0.43-x86-mswin32...

C:\tmp>

rubyforgeのダウンロードページ からruby-debug-base-0.10.3-mswin32.gemをダウンロードします。そしてダウンロードしたruby-debug-base-0.10.3-mswin32.gemをgemでインストールします。

C:\tmp>gem install -l ruby-debug-base-0.10.3-mswin32.gem
Successfully installed ruby-debug-base-0.10.3-x86-mswin32
1 gem installed
Installing ri documentation for ruby-debug-base-0.10.3-x86-mswin32...
Installing RDoc documentation for ruby-debug-base-0.10.3-x86-mswin32...

C:\tmp>

ruby-debug-ide

おなじくrubyforgeのダウンロードページ からruby-debug-ide-0.4.6.gemをダウンロードします。そしてダウンロードしたruby-debug-ide-0.4.6.gemをgemでインストールします。

C:\tmp>gem install -l ruby-debug-ide-0.4.6.gem
Successfully installed ruby-debug-ide-0.4.6
1 gem installed
Installing ri documentation for ruby-debug-ide-0.4.6...
Installing RDoc documentation for ruby-debug-ide-0.4.6...

C:\tmp>

デバッガを実行する

プロジェクトを右クリックして「デバッグ」を選択するとRedmineが起動しデバッガを開始します。

ブレークポイント

NetBeansIDEのエディタ上でブレークポイントを設定したい行番号をクリックするとその行にブレークポイントが設定されます。

すると実行中に処理がブレークポイントに達した場合、そこで処理が一時中断します。

もちろんステップ実行で1行ずつ処理を進めることもできます。また、下部の変数ウィンドウでその時点で設定されている変数の中身を確認することもできます。

単体テストする

準備

NetBeansIDEからテストを実行することができます。そのためには予めRubyに以下の3つのgemをインストールしておく必要があります。

  • mocha
  • edavis10-object_daddy
  • thoughtbot-shoulda

それぞれ以下のコマンドを実行して、インストールします。

C:\>gem install mocha
C:\>gem install edavis10-object_daddy
C:\>gem install thoughtbot-shoulda --source=http://gems.github.com

単体テストを実行する

単体テストを記述したファイルを開き、右クリックして「ファイルをテスト」を選択すると単体テストを開始します。