« ゴミにのしをつける読書日記「Tomcat実践アプリケーションサーバ構築」 | トップページ | VirtualPCの不具合? »

2007年4月 8日 (日曜日)

読書&実体験『開発者ノートシリーズ「Maven」(第1章)』

今回は単純な書評だけでなく、書かれている内容を実際に試してみての話です。IT系の書籍について、「この本がいい!」とか言うのはあちこちで見ますし、またサポートページなどでサンプルソースの公開や正誤表などのフォローなども当たり前のようにありますが、

「実際に試してみてどうか?」

と言うのはなかなか見かけません。いや、見事な構成の書籍であれば「誰がどう」やっても書籍にある「ゴール」にたどり着けるわけで、世の中の大半の書籍はおそらくそうなのだと思いますが、前回の「ゴミにのしをつける読書日記「Tomcat実践アプリケーションサーバ構築」」みたいに出版後時間が経過した事によって背景が変わったりだとか表現がイマイチ伝わりにくかったりとかで「ゴール」にたどり着けない書籍もちらほらとあるようです。

ここではそういった部分にスポットを当てて実際に試してみて、ハマッた部分なんかのフォローを記載しようと言うわけです。

当然筆者の実力、フォローを書いている時の歴史背景も動的に変化しますので何時までたってもきりが無いと言えば無いのですが、いつか同じような境遇に当てはまった人の役に立てばと思います。ちなみに筆者自身は意外と勘違い症でして、本書の指示に従わずに感性で突っ走って「うごかねー」と言う事が結構あり「ハマりやすい」タイプですのでこういう事にはある意味「向いている」と思っています。

さて、今回取り上げるMavenはビルドツールの一種で古くはmake、最近ではAntなどに代表されるプロダクトの最新の潮流と言えます。ただ、性質はかなり異なり*なかなか敷居が高いものとなっているようにも思います

*Emacsが「エディタ」でなく「環境」と呼ばれる由縁に似た印象を受けます。

開発者ノートシリーズ Maven
http://www.oreilly.co.jp/books/4873112702/

Maven日本語サイト
http://www.ingrid.org/jajakarta/turbine/jp/turbine/maven/index.html

 

まずは第1章「Maven入門」から。バージョンは基本的に書籍にあるものにあわせています

「いきなりのトラップ(P4)」
P4にあるコマンドは「aven genapp」とありますが当然「maven genapp」の間違いです。
んで、このトラップをすり抜けて実行してみるとエラーが発生

原因はこれ
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36378&forum=12&1

Mavenは必要なライブラリがローカルに無いと自前でインターネットからDLするんですが、そのリポジトリの情報が変わってしまっているようです。対処はtest-applicationフォルダ内にproject.propertiesファイルを作成し、上記のmaven.repo.remoteを記載し、保存してから再度maven genappを実行すればOK。

この問題、最初はURLがおかしいんじゃ?と思うんですが、実際にそのURLをWebブラウザに入力してみるとちゃんと表示されるのでMavenがバグっていると思いがちです。ところが、実はそのURLはリダイレクトされて他にURLに繋がっているのです。Mavenはサーバからリダイレクト要求が来てもリダイレクトしないので結果的にエラーになっていると言う理屈です。

「ローカルリポジトリってどこ?(P1~P16)」
MavenのローカルリポジトリはWindowsの場合デフォルトで

C:\Documents and Settings\ユーザ名\.maven\repository

にあります。P17で説明されていますがそれまでに「あれ?」と思った人の為に書いておきます。

 

「Mevenideがうまく動かない(P22)」
Eclipseプラグイン(Mevenide)でゴールがうまく実行できず、エラーになります、
→これはまだ原因不明です。Eclipseのバージョンは3.1.1で試しているがMevenideとの相性問題かもしれません。メッセージは「"起動中"中に内部エラーが発生しました。」で詳細は見れず。

「maven javadocでエンコードがおかしく、文字化けする(P29)」

Windowsであればproject.propertiesに

maven.docs.outputencoding=Shift_JIS

を指定すると良いらしいです

参考URL(「○project.properties」の項目を参照)
http://www.datasection.com/archives/2005/11/maven2.html

 

「プロジェクトのWebサイトの作成で警告(P34)」
CVSサーバとかの事前準備が整っていないと警告が出ているっぽいです(一応サイトは作成されているようですが)。本書でもコマンドの説明はしていますが、スクリーンショットで挙げているのはどこか別のMavenを使用しているプロダクトのサイトを紹介しています。

とまぁ、第1章はこんな感じ。
ここまでの雑感は「なんとなくMavenが色々便利そうって感じはしなくもないですが「明日から使えそう」ってレベルには程遠い」と言ったところです。2章以降はまた後ほど。

|

« ゴミにのしをつける読書日記「Tomcat実践アプリケーションサーバ構築」 | トップページ | VirtualPCの不具合? »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/2790/14600359

この記事へのトラックバック一覧です: 読書&実体験『開発者ノートシリーズ「Maven」(第1章)』:

« ゴミにのしをつける読書日記「Tomcat実践アプリケーションサーバ構築」 | トップページ | VirtualPCの不具合? »