第1章
構成管理入門  

第2章
Subversionによるバージョン管理入門

第3章
Subversionベストプラクティス

第4章
Maven2によるビルド入門

第5章
Maven2ベストプラクティスリリースの自動化

第6章
リリースの自動化

Appendix
Maven 2はまり道


※WEB+DB PRESS Vol.39掲載の記事を載せています。

第6章 Maven2ベストプラクティス

Authors:YAMAMOTO Ryuzo

本番環境でのビルドとテスト

本章で紹介したリリースの方法は、アプリケーションが動作する本番環境にてビルドしています。 本番環境にてビルドが成功するということは、その環境で動作することをほとんど保証しますし、 開発者の環境に依存せずにどこにでも同じビルド環境を作れることになりますので、 お勧めするやり方です。
ただし、本番環境ではすでにアプリケーションが動作してる場合がありますので、必ずユニットテス トや結合テストは「行わず」にビルドするようにしましょう。「ユニットテストでデータベースにアクセ スして本番環境のデータを削除してしまった…」みたいな事態には決してならないように注意してくだ さい。Maven 2であれば-Dmaven.test.skip=trueオプションを付けてコマンド実行するか、本番環境での ビルド用プロファイルを作成し(リスト4)、mavensurefire-pluginのオプションを指定しましょう。

【オプションを付けた場合の例】
> mvn -Dmaven.test.skip=true package
【プロファイルを指定した例】
> mvn -P release package
●リスト4 テストを実行しない設定
<project>
  ...
  <profiles>
    <profile>
      <id>release</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <skip>true</skip>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
  ...
</project>