skillup

技術ブログ

Java

mavenのゴール

投稿日:2015年9月10日 更新日:

以前、pomに依存ライブラリを記述しましたが、コンパイルのときのみクラスパスが通っており、実行時にはクラスパスが通っていない、NoClassDefFoundErrorがでたことがありました。

気づいたらスコープをprovidedにしてありました。これだとコンパイルの時のみパスが通るようですね。

ライブラリのスコープについては以前ここで記述していますので今回はゴールについて(testで使う以外は基本無し、テストの時のみtestでいいと思います。)

mavenのゴール(特に頻出のもの)

mvn site

pom.xmlをもとにプロジェクトの情報をHTML形式に吐き出してくれます。
現在使用しているプラグイン読み込んでいるjarファイルの一覧等が確認できます。

javadocを出力したいときなどに使いましょう。

mvn compile

target/classes 配下にjavaコンパイルした.classファイルを作成してくれます

mvn test-compile

target/test-classes 配下にコンパイルしたテスト用.classファイルを作成してくれます

mvn test

target/classes 配下にjavaコンパイルした.classファイルを作成し
target/test-classes 配下にコンパイルしたテスト用.classファイルを作成し
target/surefire-reports 配下にテスト結果を作成してくれます
mavneデフォルトのテストツールは「JUnit」となっておりpom.xml内でdependencyが定義されています

mvn package

target 配下にjarファイルを作成し
target/classes 配下にjavaコンパイルした.classファイルを作成し
target/test-classes 配下にコンパイルしたテスト用.classファイルを作成し
target/mavne-archiver 配下にpom.properties(プロジェクトのメタ情報ファイル?要調査)を作成し
target/surefire-reports 配下にテスト結果を作成してくれます
「jar:jar」「compile」「test-compile」「test」等をまとめて実行してくれるgoalです
test結果に関してはSurefireプラグインというプラグインを使っているようでテスト結果を統計的に見れるファイルも作成してくるようです
http://maven.apache.org/surefire/maven-surefire-report-plugin/

通常はpackageでよさそうですね。

また特定のprofileに基づいてデプロイ(設定ファイルを書き換えたいとき)したいときは引数をわたすなどのカスタマイズもできます。

参考リンク

1. 検索処理の概要

-Java
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

文字列変換系処理まとめ

Javaで文字列の変換(全角、半角など)の処理のまとめです。 ブログに記事として書こうと思ったのですが、丸々コピペになってしまうので、それじゃあ元リンクを紹介したほうがいいかなと思い、今日は基本的にリ …

no image

ポリモフィズム(多態性)とは

Javaでオブジェクト指向の考え方の重要な考え方であるポリモフィズムについて。 Contents1 ポリモフィズムとは?2 ソース ポリモフィズムとは? 日常的に使っていながらいざ説明するとなると困り …

no image

BeanUtilsについて

以前このエントリーでも紹介しましたが、BeanUtils、思った以上に使い方が幅広いです。 Contents1 クラスからクラスに2 マップからクラスに3 クラスからマップ4 特定の値の取り出し5 リ …

no image

例外処理について

Javaの例外処理について書きます。 自分はPHPメインでやってきましたので、この例外についてはうろ覚えでした。 PHPだと例外処理はあるんですが、まああんまり使わなかったり、理解がいい加減でもなんと …

no image

CSVの入出力に関して

業務でCSVの入出力と格闘中。 まあよくある頻出の作業だったりするんですが、自前でやるとなかなか面倒です。 面倒なポイントとしては クオートのエスケープ カンマのエスケープ ヘッダーとの結合 ですかね …