中島 洋行 著
システム開発では、誰にでもわかりやすく単純で、かつ機能的な構成であることが大切です、Mavenは、システム開発における非常に多くの生成物を、安定した開発構成で管理するためのツールです。その開発構成と一元管理されたライブラリとを利用して、プロジェクトのビルドやテストを用意に行なったり、プロジェクトの全体像を把握するためのサイトを生成したりすることもできます。
本書では、Java開発において安定したプロジェクト開発構成を提供するMavenについて、その全体像と簡単な使い方から、実際の開発現場での応用方法にいたるまで、ていねいに解説します。
本書の対象読者
第1章 Mavenで何ができるのか
1.1 Apache Mavenとは
Apache Mavenって何?
POMって何?
1.2 Mavenとプロジェクト管理
開発者のタスク
開発者の抱える問題
Mavenによる解決
MavenとAntの比較
Mavenのサイト生成機能
1.3 Mavenの未来
第2章 Mavenを使ってみよう
2.1 とにかく使ってみよう
インストール
さあ、始めよう
2.2 Mavenの基本
Mavenの基本事項
プラグインとゴール
日本語対応
2.3 リポジトリ
リポジトリとは
リモートリポジトリ
ローカルリポジトリ
2.4 Javaアプリケーションを作成してみよう
プロジェクトの新規作成
コンパイルとjarファイルの作成
ゴールとは
単体テストの実行
ライブラリを使用する
作成したアプリケーションを実行する
2.5 Webアプリケーションを作成してみよう―XDocletを使用した方法
プロジェクトの新規作成
コンパイルとwarファイルの作成
単体テストの実行
ライブラリを使用する
作成したWebアプリケーションを実行する
2.6 Webアプリケーションを作成してみよう―XDocletを使用しない方法
プロジェクトの新規作成
コンパイルとwarファイルの作成
2.7 J2EEアプリケーションを作成してみよう
プロジェクトの新規作成
ルートプロジェクト
ejbプロジェクト
webプロジェクト
earプロジェクト
コンパイルとearファイルの作成
作成したJ2EEアプリケーションをデプロイする
第3章 Mavenの便利な機能を使ってみよう
3.1 ディレクトリ構成
Mavenプロジェクトのディレクトリ構成
3.2 プロパティの設定
プロパティの設定方法
プロパティ一覧
プラグインのプロパティ設定
3.3 コマンドラインオプション
オフラインでビルドする
3.4 ライブラリを使用する
jarファイルの依存関係を指定する
jarファイル以外の依存関係を指定する
ダウンロードするリモートリポジトリを指定する
jarファイル名を指定する
jarファイルの依存関係をオーバーライドする
スナップショット依存を使用する
スナップショット依存を解決する
warファイルに依存するjarファイルを含める
warファイルに依存するtldファイルを含める
ejb-jarファイルに依存するjarファイルを含める
依存するjarファイルをコピーする
クラスパス
依存関係にプラグインを指定する
3.5 リソースファイルを使用する
jarファイルにリソースファイルを格納する
リソースファイル内の文字列を置換する
3.6 単体テストを行う
project.xmlを記述する
単体テストの実行
テスト結果レポートを作成する
単体テストのガバレッジ情報を作成する
3.7 サイトを構築する
プロジェクトのサイトを構築する
トップページの記述
色のカスタマイズ
スタイルシートのカスタマイズ
生成するレポートのカスタマイズ
生成するレポートを使用しない
変更履歴を生成する
ナビゲーションを作成する
バグパターン検知レポートを作成する
statcvsレポートを生成する
3.8 複数のプロジェクトをビルドする
リアクターを使用して複数のプロジェクトをビルドする
3.9 earファイルを作成する
ejb-jarファイルを作成する
earファイルを作成する
3.10 バージョン管理システムと連携する
サポートするバージョン管理システム
WindowsでCVSを使用する
CVSを使用する設定
StarTeamを使用する設定
第4章 project.xmlを書いてみよう
4.1 最小限のproject.xml
4.2 グループを指定する
4.3 ライブラリを指定する
4.4 リソース情報を記述する
4.5 実行環境別に使用するリソースを変更する
4.6 単体テスト情報を記述する
4.7 JavaDoc情報を記述する
4.8 SCM情報を記述する
4.9 サイト情報を記述する
4.10 プロジェクトの継承
POMの継承
4.11 その他の情報を記述する
4.12 POMの置換
4.13 POM4とPOM3の違い
第5章 プロジェクト記述子リファレンス
5.1 プロジェクト記述子
5.2 project
5.3 organization
5.4 repository
5.5 versions
versions
version
5.6 branches
branches
branch
5.7 mailingLists
mailingLists
mailingList
5.8 developers
developers
developer
5.9 contributors
contributors
contributor
5.10 licenses
licenses
license
5.11 dependencies
dependencie
dependency
5.12 build
build
sourceModifications
sourceModification
unitTest
resources
resource
includes
excludes
5.13 reports
reports
第6章 maven.xmlを書いてみよう
6.1 maven.xmlの基本
maven.xmlで何ができるの?
maven.xmlの配置場所
maven.xmlのネームスペース
プロパティ値の参照
6.2 werkzタグ
project
goal
attainGoal
preGoal
postGoal
6.3 Antタグ
6.4 Maven用Jellyタグライブラリ
maven:addPath
maven:concat
maven:copyResoueces
maven:get
maven:input
maven:installPlugin
maven:makeAbsolutePath
maven:makeRelativePath
maven:maven
maven:paramCheck
maven:pluginVar
maven:pom
maven:property
maven:reactor
maven:rootRelativePath
maven:set
maven:snapshotSignature
maven:uninstallPlugin
maven:userCheck
6.5 その他のJellyタグ
core:forEach
util:tokenize
core:set
6.6 プラグインが提供しているタグ
deploy:copy-deps
artifact:install
第7章 プラグイン
7.1 プラグインをインストールする
Pluginプラグインを使ってインストールする
手動でインストールする
dependencyを使ってプラグインをインストールする
プラグイン一覧
7.2 プラグインをアンインストールする
7.3 プラグインのディレクトリ構成
プラグインのプロパティ
第8章 Mavenマスターになろう
8.1 独自のプロジェクトテンプレートを作成する
Genappプラグインのテンプレート
独自のテンプレートの作成
フィルターの設定
パッケージ再構成のルール
8.2 ibiblioにアップロードする
8.3 プラグインを作成する
プラグインを作成する―ソースファイルを使わない場合
プラグインを作成する―ソースファイルを使う場合
8.4 レポートを出力するプラグインを作成する
第9章 Eclipseとの連携
9.1 Eclipseとの連携
9.2 クラスパス変数の設定
変数MAVEN_REPOの設定
変数MAVEN_REPOを使ってクラスパスを設定する
9.3 MavenのEclipseプラグイン
Eclipseプラグインのゴール
Eclipseプラグインのプロパティ
プロパティでEclipseのクラスパスを生成する
9.4 Mavenide
EclipseのMavenプラグイン
Mavenideとは
Mavenideのインストール
ゴールの実行
EclipseとPOMを同期する
project.xmlを編集する
リポジトリブラウザ
9.5 Maven Repo Searchプラグイン
Maven Repo Searchとは
Maven Repo Searchプラグインのインストール
Maven Repo Searchを使ってみよう
第10章 Tips&FAQ
10.1 Tips
アプリケーションを実行する
実行速度を上げる
テストの通らないプロジェクトをビルドする
複数のソースディレクトリを使用する
ゴールの中でバックグラウンドプロセスを実行する
10.2 FAQ
日本語が文字化けします
JavaMailなどのSun Microsystemsが提供するjarがリモートリポジトリにありません
Javaのバージョンを指定するにはどうすればいいですか
JUnitプラグインでOutOfMemoryエラーが出てしまいます。
scmプラグインがエラーになります
インストールしたプラグインが実行できません
MavenideでRun Mavenを実行した際に、「起動中のエラー」というダイアログが表示されてしまいます
Middlegenプラグインがダウンロードできません
Middlegenプラグインで生成したHibernateのマッピングファイルが正しくありません
MiddlegenプラグインでPostgreSQLのスキーマからHibernateのマッピングファイルを生成すると、管理用のテーブルまで対象になってしまいます
さらに詳しいMavenの情報を手に入れるにはどうすればいいですか
参考サイト
内容についてのお問い合わせは、正誤表、追加情報をご確認後に、お送りいただくようお願いいたします。
正誤表、追加情報に掲載されていない書籍内容へのお問い合わせや
その他書籍に関するお問い合わせは、書籍のお問い合わせフォームからお送りください。
本書の書影(表紙画像)をご利用になりたい場合は書影許諾申請フォームから申請をお願いいたします。
書影(表紙画像)以外のご利用については、こちらからお問い合わせください。