■ProjectWOnderのセットアップ■
ここを参考にして進めます→「Project Wonder Installation」Step1-4までありますが、3まででOKです。「Step 4: Import Project Wonder into your Eclipse workspace」はちょっと説明が必要なのでこの後の節で。
■WOnderのセットアップ■
大まかな手順は- WOnderソースコードのダウンロード
- Java環境変数の確認と設定
- ビルド&インストール
まずはソースをダウンロードします。「Getting the Wonder Source Code」を参考にしました。
・Homeディレクトリへ移動
$ cd
・WOnderソースコードのダウンロード
$ git clone git://github.com/projectwonder/wonder.git WonderSource
$ cd WonderSource
・最新版の確認とダウンロード
$ git checkout integration
次に、javacの環境設定の確認です。ターミナルで
$ setenv | grep JAVA_TOOL_OPTIONS
JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8
$
のようにエンコーディングが指定されていればいいのですが、ない場合には適当なエディタで.csrcを開き、 setenv JAVA_TOOL_OPTIONS -Dfile.encoding=UTF-8 と追加します。追加したらシェルを再起動します。ターミナルごと再起動するか新しいウィンドウを開いてもOKです。上記のsetenv...を使って、設定が反映されていることを確認してください。
では、ビルドとインストールです。ターミナルから
$ ant frameworks; sudo ant frameworks.install
を実行します。数分かかりますが、エラーやワーニングが出ていないか注意してください。buildが終わったところで一旦動きが止まり、sudoのパスワードを求められます。最後に
BUILD SUCCESSFUL
Total time: 25 seconds
が表示されれば終わりです。こう書くとあっという間なんですが…いろいろ試行錯誤があって数日ツブれました…いや、愚痴ですけどね。
■WOアプリを作る■
ではいよいよWOのアプリを作ります。
Eclipseで File>New>Wonder Application を選びます。Wonder Applicationが選択肢として出てこない場合には、PerspectiveをWOLipsに切り替えてからもう一度。プロジェクト名は WOHeroku にしてFinishボタンをクリックします。
プロジェクトを開き、Sources>your.app>Application.javaを右クリックし、Run As>WO Applicationを選びます。
コンソールに起動ログが真っ赤な字で表示されますが、お気になさらず。そのまま数秒後ブラウザ上に Hello World が表示されます。これでWOアプリが動くことは確認できました。
■ServletとしてDeployし、Herokuへ■
プロジェクト名を右クリックし、Properties>WOLips Deploymentを選びます。ここで「Servlet Deployment」と「Autogenerate web.xml」をチェックし、OKをクリックします。この時点でHerokuで動かせないことに気づきました。SDDオプションがありません。SDDでないとWOFが組み込まれないので…。
プロジェクトメニューを右クリックし、WOLips Ant Tools>Installを選びます。ビルドが行われますが、通常のビルドよりも時間がかかります。問題がなければ数分後、BUILD SUCCESSFULの表示が出てApplicationディレクトリにWOHerokuとWOHeroku.woaディレクトリ, WOHeroku.warが出来ているはずです。
が、私の環境もそうでしたが、/Library/WebObjects/Applicationディレクトリのパーミッションがユーザに対して許可されていないとBUILD FAILEDになります。対処方法は二つ、開発マシン上なら1、運用マシン上でビルドも行うのであれば2でしょうか。
1.パーミッションを変更する
標準的なインストール環境であれば、ターミナルで
$ cd /Library/WebObjects/Versions/WebObjects543/Library/WebObjects
$ sudo chmod 775 Applications/
Password:
$ sudo chgrp staff Applications/
などと設定します。ともかく、自分がApplicationに書き込みできるような権限を付与します。775とは古いねしかしorz
2.インストール先を変更する
プロジェクトWOHerokuディレクトリの直下にある build.properties に dist.dir=dest という一行を追加します。こうすると、ビルドした結果がWOHerokuディレクトリ直下のdestディレクトリに変更されます。
これでWOHeroku.warができました! ここまでホントに長かった…。
■HerokuへDeployment、できません■
ターミナルで、WOHeroku.warのあるディレクトリへ移動し、デプロイします。
$ heroku deploy:war --war WOHeroku.war
! No app specified.
! Run this command from an app folder or specify which app to use with --app <app name>
$
$ heroku deploy:war --war WOHeroku.war -app WOHeroku
! No app specified.
! Run this command from an app folder or specify which app to use with --app <app name>
$
と、いうことでapplicationとして認識してもらえません。mavenさんでWOFも送り込むようなpom.xmlを書いたりすれば技術的には可能だと思いますが、これからmavenさんを勉強するスキルがありません。
ごめんなさい。
ただ、今後もWOを趣味程度にいじっていこうと思ってます。最近会社にもMacが入ってXcode三昧だったりするので、家と会社では違うことをやらないとね。
$ heroku deploy:war --war WOHeroku.war
! No app specified.
! Run this command from an app folder or specify which app to use with --app <app name>
$
$ heroku deploy:war --war WOHeroku.war -app WOHeroku
! No app specified.
! Run this command from an app folder or specify which app to use with --app <app name>
$
と、いうことでapplicationとして認識してもらえません。mavenさんでWOFも送り込むようなpom.xmlを書いたりすれば技術的には可能だと思いますが、これからmavenさんを勉強するスキルがありません。
ごめんなさい。
ただ、今後もWOを趣味程度にいじっていこうと思ってます。最近会社にもMacが入ってXcode三昧だったりするので、家と会社では違うことをやらないとね。
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。