2008年2月8日金曜日

Grailsに触る

そもそもRailsも実際に触ったことが無い、Groovyもほんの少ーし触った程度で何にも覚えてない、そんな自分が簡単なWebアプリをGrailsを作ろうとするとどぅなるんだろぅ?という疑問もあるし、やってみる。1.0がリリースされたし。Grailsは日本語ページもあるので、基本的にはそこのQuickStartのとおりにやればなんかできんじゃねぇの、といぅ楽観的な考えで挑んでみる。でも、ほんっっと触るだけ。深入りしない。

  1. GrailのページにあるInstallationにあるLinkからGrailsを落としてくる。自分の場合はbinaryをzipで落としてきた。
  2. モジュールをどこかに解凍する。自分の場合は、手作業で導入するアプリケーションはすべて「/opt」に展開しているので、同様にして「/opt/grails-1.0」とした。Linux的にこの場所を使うのが正しいかは知らん。そんな事はどーでもいい。
  3. 「GRAILS_HOME」「JAVA_HOME」の設定が必要、との事だったので「/opt/grails-1.0/bin/grails」をTextEditorで開いて以下の2行を追加した。
    export GRAILS_HOME=/opt/grails-1.0
    export JAVA_HOME=/usr/lib/jvm/java-1.5.0-sun-1.5.0.13
  4. どこからでもgrailsのコマンドを使えるように、PATHに「/opt/grail-1.0/bin」を追加する。これでInstallは終わり。
  5. まずはgrailsプロジェクトをひとつ作成してみる。コマンドプロンプト(terminal)を開く。project用のフォルダが作成されるので、そのフォルダが作られても構わないフォルダにカレントフォルダを移動して、以下を実行する。
    $ grails create-app
  6. 以下のようなメッセージが表示される。
    Welcome to Grails 1.0 - http://grails.org/
    Licensed under Apache Standard License 2.0
    Grails home is set to: /opt/grails-1.0
    
    Base Directory: /projects
    Environment set to development
    Note: No plugin scripts found
    Running script /opt/grails-1.0/scripts/CreateApp.groovy
    Application name not specified. Please enter:
  7. ここでプロンプトが止まっているはずなので、作成するprojectの名前を入力する。project用のフォルダ名にも使用される。とりあえず「studyGrails」とか入力してみた。
  8. またcreate-appの処理が続行される。
        [mkdir] Created dir: /projects/studyGrails/src
     [mkdir] Created dir: /projects/studyGrails/src/java
    ...
    [propertyfile] Creating new property file: /projects/studyGrails/application.properties
      [copy] Copying 2 files to /projects/studyGrails
      [copy] Copying 2 files to /projects/studyGrails/web-app/WEB-INF
    ...
    [propertyfile] Updating property file: /projects/studyGrails/application.properties
    Created Grails Application at /projects/studyGrails
  9. 結構時間がかかるよぅだが、これでGrailsのWebAppの雛形ができているらしい。確かにstudyGrailsというフォルダが作成されている。まずはこのフォルダへカレントフォルダを移動する。
    cd studyGrails
  10. そこで、以下のコマンドを実行して、作成されたWebAppの動作を確認してみる。
    $ grails run-app
  11. 以下のようなメッセージがつらつらと表示される。これまた起動までに少し時間がかかる。
    Base Directory: /projects/studyGrails
    Environment set to development
    Note: No plugin scripts found
    Running script /opt/grails-1.0/scripts/RunApp.groovy
       [mkdir] Created dir: /projects/studyGrails/web-app/WEB-INF/lib
       [mkdir] Created dir: /home/shin1/.grails/1.0/projects/studyGrails/classes
    ...
    2008-02-08 01:32:03.089:/studyGrails:INFO:  Initializing Spring FrameworkServlet 'grails'
    2008-02-08 01:32:03.562::INFO:  Started SelectChannelConnector@0.0.0.0:8080
    Server running. Browse to http://localhost:8080/studyGrails
    最後に「Server running.」が見えていれば大丈夫なはず。ブラウザから「http://localhost:8080/studyGrails」を表示して、「Welcome to Grails」が見えたらちゃんと動作している、という事。
  12. 動作確認が終わったら、「ctrl+c」でWebAppを停止させる。
mavenでwicketなどのquick-startを使うのと同じカンジの手軽さでWebAppの雛形が作成できるようだ。ただ、ひとつひとつのコマンドの実行が遅い! ちなみに、作成されたフォルダを開くとあまりにもファイルが多くてびっくりする。hibernateやspringの設定も出力されている。これらを触らずに済めば良いなぁと願って、何か簡単なモノを作ってみることにする。
  • メンバ管理
  • メンバにぶら下がるタスク管理
これらをメンテナンスする単純なアプリを作ってみることにする。が、続きは明日のエントリで。

コメントを投稿