Maven
Apache Maven 3.9.6 を、Windows にインストールする方法を書いていきます。 目次 JDKと環境変数 ダウンロード 解凍と移動 環境変数の表示 Pathの設定 動作確認 1. JDKと環境変数 Maven を使うには、以下の条件を満たす必要があります。 JDKがインストールさ…
Mavenプロジェクトで、Eclipse のテストは成功するのに、コマンドラインからのテストが失敗することがありました。 原因は設定ファイルの置き場所を間違えたためで、これからその詳細について記載していきます。 エラー内容 コマンドラインで mvn test を実…
Maven のコンパイルで、Java のバージョンを設定する方法を書いていきます。 設定方法 次のように、pom.xml のプロパティで設定します。 <project> ... <properties> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> </properties> ... </project> ※ プロジェクトタグの属性は省略しています。 Spring Boot プロジェクトの場合 Spring Boot アプリ…
Spring Boot のアプリを Maven でビルドする際に、Java のバージョンを指定する方法を書いていきます。 指定方法 pom.xml のプロパティ java.version で指定できます。 <project> ... <properties> <java.version>17</java.version> </properties> ... </project> 値は 8(1.8), 11, 17 といった番号になります。 Spring Boot の POM …
pom.xml の pluginManagement について、用途と使用例を書いていきます。 用途 親のプロジェクトでプラグインを定義して、子のプロジェクトに継承させるために使います。 ※ 親のプロジェクトでも、定義したプラグインを使用できそうです。 使用例 親の pom.x…
Maven のプロジェクトをビルドして、ローカルリポジトリの資源(jarなど)を更新する方法を書いていきます。 方法 プロジェクトのルートディレクトリで、以下のコマンドを実行します。 mvn install Windows の場合、C:\Users\{ユーザ名}\.m2\repository 配下…
Maven の pom.xml の要素 dependencyManagement について、用途と使用例を書いていきます。 用途 親のプロジェクトでライブラリ(依存関係)を定義して、子のプロジェクトに継承させるために使います。 使用例 親の pom.xml 親の dependencyManagement で、…
Maven のバージョン番号に付けられる SNAPSHOT の概要と、リリース方法を書いていきます。 1. SNAPSHOT の概要 SNAPSHOT とは、 開発中のコードであること 安定版ではないこと 変更の可能性があること を示す値です。 2. SNAPSHOT の成果物 スナップショット…
Maven で WAR を作成して、Hello World を出力する方法を書いていきます。 バージョン ブログ執筆時の製品バージョンは以下の通りです。 Windows 11 Java 17 Maven 3.8.6 Tomcat 10.0.27 Servlet 5.0(JakartaEE 9/jakartaee.servlet.*) ディレクトリ階層の…
Maven のプロジェクトで、src/test/java 配下の Mainクラスを実行する方法を書いていきます。 1. 実行方法 以下のコマンドを実行します。 mvn exec:java -Dexec.mainClass=org.sample.hello.TestMain -Dexec.classpathScope=test 上の org.sample.hello.Test…
Exec Maven Plugin を使って、Java のプログラムを実行する方法を書いていきます。 1. 実行方法 pom.xml に、プラグインと実行したいクラスを追加します。 <project> <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>3.1.0</version> <configuration> <mainClass>[MainクラスのFQCN]</mainClass> </configuration></plugin></plugins></build></project>
Maven の Assembly Plugin を使って、fat jar(依存するライブラリも含む jar)を作成する方法を書いていきます。 ※ fat jar は uber-jar と呼ばれることもあります。 1. 作成方法 pom.xml に、アセンブリープラグインの定義を追加します。 <project> <build> <plugins> <plugin> <groupId>org.apache.m</groupid></plugin></plugins></build></project>…
Maven のビルドで、単体テストをスキップする方法を書いていきます。 1. テストの実行をスキップする方法 テストの実行をスキップするには、プロパティ skipTests を使います。 mvn package -DskipTests 下のように、true を設定しても同じ動作になります。 …
Maven のビルドライフサイクル、フェーズ(フェイズ)、ゴールについて、調べたことをまとめていきます。 1. ビルドライフサイクルについて Maven には3つのビルドライフサイクルがあり、それぞれが以下の役割を担っています。 clean:ビルドの成果物を削除…
Maven のプロジェクトに、ライブラリ(依存性)を追加する方法を書いていきます。 Maven で依存関係を追加すると、ライブラリが自動的にダウンロードされて、クラスパスに追加されたりするので便利です。 追加方法 以下のように、pom.xml の dependencies で…
Maven のプロジェクトを作成して、Hello World プログラムを実行する方法を書いていきます。 バージョン ブログ執筆時の OS とバージョンは以下の通りです。 Windows 11 Java 17(Amazon Corretto) Maven 3.8.6 上のリンクをクリックすると、インストール方…
Maven で Javadoc のエンコーディング(文字コード)を設定する方法を書いていきます。 設定方法 下のように、pom.xml のプロパティで指定します。 <project> ... <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> </properties> ... </project> ※ プロジェクトタグの属性は省略していま…
Maven のプロジェクトで、ソースコードやドキュメント出力(Javadocなど)のエンコーディングを設定する方法を書いていきます。 設定方法 下のように、pom.xml のプロパティで設定します。 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> </properties> プロパティの位置 プロパティタグ <properties> の…</properties>