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のarraycopy

最近あまりJava自体には触っていないですが、資格の勉強をコツコツとすすめていることもあり、新たな発見もあります。 8ヶ月ぐらいJava書いていますが、arraycopyというメソッドをはじめてしりま …

no image

正規表現(判定:置換:抽出)

Javaの正規表現を利用した置換、抽出について書きます。 Contents1 正規表現の基本ルール2 Javaでの正規表現の処理の流れ3 実処理3.1 判定3.2 抽出3.3 置換 正規表現の基本ルー …

no image

Javaでの文字コード判定、変換

Javaにて文字コード判定の処理を書きます。 Contents1 通常の文字コードの判定、変換2 ファイルの文字コード判定、変換2.1 juniversalchardet2.1.1 ダウンロード2.1 …

no image

jenkins構築

いままでjenkinsについての記事を書いていなかったので記録しておこうと思います。 Contents1 前提条件2 jenkins構築3 設定ファイル変更(ポート&URL変更)4 セキュリティ有効化 …

no image

小ネタ集

最近覚えた小ネタをのせていきます。 熟練のプログラマからすると当たり前のことが多いと思いますが・・・ Contents1 {}でスコープ限定2 リダイレクト:face-redirect=true3 H …