Archive for 11月, 2007

Wicketプロジェクトはたった一行のコマンドで始められる

Wicketいいよ、Wicket」と周りの人間に勧めても、「めんどくさい」というセリフで一蹴されることがあります。
で、そんな人がRuby on Railsを勉強していたりします。

そういう人は、Javaのフレームワークっていちいちjarファイルをダウンロードして、依存関係にあるライブラリもダウンロードして、それらをクラスパスに通して、とかそういうことを未だにしなきゃいけないと思ってるみたい。

実はWicketのほうが、Ruby on Railsよりもプロジェクトを開始するまでに必要なコマンドの数が少ないんです!

以下、Wicketのプロジェクトを開始する方法を、Ruby on Railsと対比しながら記述します。
多分、WindowsでもMacでもLinuxでも大丈夫だと思う。

1. JDK 5.0 or 6.0及びMaven 2はインストール済みのものとします。
(最新のRuby及びRubyGemsはインストール済みのものとします)

2. コマンドプロンプトなりターミナルエミュレータなりを開いてプロジェクトを作成したい場所に移動し、
> mvn archetype:create -DarchetypeGroupId=org.apache.wicket -DarchetypeArtifactId=wicket-archetype-quickstart -DarchetypeVersion=1.3.0-rc1 -DgroupId=foo.bar -DartifactId=hogehoge
と入力します(一行です)。foo.barはパッケージ名、hogehogeはプロジェクト名に置き換えてください。
(2.1 コマンドプロンプトなりターミナルエミュレータなりを開いて
> gem install rails -y
2.2 プロジェクトを作成したい場所に移動し
> rails hogehoge)

これでプロジェクトの雛形が作成されました。
ほらほら、このステップでRuby on Railsは2行必要なのにWicketは1行でいい!
長い?長いけど、どうせコピペするからそんなの関係ねぇ!

作成されたプロジェクトの雛形は以下のようなディレクトリ構成になっています(Wicketのページからパクリ)。

    .hogehoge
    |   pom.xml
    |
    ---src
        +---main
        |   +---java
        |   |   ---foo
        |   |       ---bar
        |   |               HomePage.html
        |   |               HomePage.java
        |   |               WicketApplication.java
        |   |
        |   +---resources
        |   |       log4j.properties
        |   |
        |   ---webapp
        |       ---WEB-INF
        |               web.xml
        |
        ---test
            ---java
                ---foo
                    ---bar
                            Start.java

Maven 2のデフォルト構成のまんまですね。

3. サーバ(Jetty)を起動してみるには、作成したhogehogeディレクトリに移動し、
> mvn jetty:run
( サーバ(WEBrick)を起動してみるには、作成したhogehogeディレクトリに移動し、
> ruby script/server)

起動完了したら、http://localhost:8080/hogehogeにアクセスして、
「Wicket Quickstart Archetype Homepage

If you see this message wicket is properly configured and running」
って表示されたらOK!

4. NetBeansを使うときは、作成されたpom.xmlを開くだけ。Eclipseを使うときは、
> mvn eclipse:eclipse -DdownloadSources=true
で、EclipseからインポートすればOK。
(RadRailsとかNetBeansとか使いたければ多分インポートとか普通に出来るんでしょ。よくわかんないけど。)

まあ、そんな感じ!

みんなもっとWicket使ったらいいと思うよ!

Maven 2について勉強したい人は、Java-jaの勉強会着たらいいと思うよ!

そういえば、lunchofftterソースCodeReposにコミットすることにしたよ!
Wicket-1.3.0-rc1対応とかActiveObjects0.6.1対応して、リファクタリングして綺麗なソースにしてからコミットするつもりだったけど、仕事忙しくて時間ないから、汚いソースそのまんまコミットするね。好きなだけdisればいいさ!

コミット権もらえたらコミットするので、そしたらまた周知します。

追記(11/19):
http://svn.coderepos.org/share/lang/java/lunchofftter/
にコミットしました。ライセンスはNYSL(煮るなり焼くなり好きにしろライセンス)です。

次のページ »