LoginSignup
5
6

More than 5 years have passed since last update.

[Java][Maven3] Maven3の使い方まとめ

Last updated at Posted at 2017-07-12

Apache Maven 勉強用メモ。

この記事について

Javaの初学関連で資料をまとめたメモです。
バージョンはMaven3になります。

公式

Maven – Welcome to Apache Maven

読み方

Apache Maven (アパッチ メイヴン/メイヴェン)
(読み方を最初アメコミの MARVEL 的なマーベンかと思ってた)

ユーザー設定の追加

Maven – Settings Reference

settings.xml 配置場所

Windows

C:\Users\user\.m2 以下に settings.xml を追加する。

プロキシ設定

プロキシ環境下の場合 settings.xml に以下のような設定を追加する。

プロキシ設定例
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
    <proxies>
        <proxy>
            <id>proxy-http</id>
            <active>true</active>
            <protocol>http</protocol>
            <host>proxy.exsample.com</host>
            <port>8080</port>
            <!--<username></username>-->
            <!--<password></password>-->
        </proxy>
        <proxy>
            <id>proxy-https</id>
            <active>true</active>
            <protocol>https</protocol>
            <host>proxy.exsample.com</host>
            <port>8080</port>
            <!--<username></username>-->
            <!--<password></password>-->
        </proxy>
    </proxies>
</settings>

java - 社内環境におけるmavenのプロキシ認証エラーについて - スタック・オーバーフロー

アプリケーションサーバー設定を追加

Tomcatなどのアプリケーションサーバーの設定例

デプロイ先のサーバー設定追加例
    <servers>
        <server>
            <id>localhost</id>
            <username>user</username>
            <password>pass</password>
        </server>
    </servers>

[Windows][IntelliJ][Java][Tomcat] IntelliJでTomcat9の環境を作成する - Qiita

archetypeから環境を生成する

シンプルな構成(JavaのMain Class + JUnit の構成)を生成する

基本的には、org.apache.maven.archetypesmaven-archetype-quickstart を使用すれば良いと思います。
main関数とJUnitの設定まで含まれているarchtypeです。

ただしJUnitは3.8.1と古いので、4.x系か5.x系に上げたほうが良いかもしれないです。

Maven Repository: junit » junit

コマンドラインでの実行

mvnの実行例
$ mvn archetype:generate \
  -DarchetypeGroupId=org.apache.maven.archetypes \
  -DarchetypeArtifactId=maven-archetype-quickstart \
  -DinteractiveMode=false \
  -DgroupId=${groupId} \
  -DartifactId=${artifactId}

その他・プラグイン

Javaのコンパイルバージョンを明示的に指定

maven-compiler-plugin を使用する。

pom.xml
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.6.1</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
          <encoding>UTF-8</encoding>
        </configuration>
      </plugin>
    </plugins>
  </build>

Apache Maven Compiler Plugin – Introduction
Maven Repository: org.apache.maven.plugins » maven-compiler-plugin

How to change Java version for Maven in IntelliJ? - Stack Overflow
herokuのpushでJavaのCompilerがversion 1.5になってラムダ式を使うとコンパイルエラーが発生するときの対処方法 - Qiita

Mavenからプログラムの実行

Java プログラムを Maven から実行する方法 - Qiita

コマンドラインに exec:java を追加する

jarファイルをライブラリも含めて一つにまとめる

外部依存jarも含めて一つのjarファイルにまとめたい場合 Maven Assembly Plugin を使用すると良いらしい

Maven Assembly Plugin で外部依存 jar をまとめる - A Memorandum

IDE付属のMavenを使う場合

IntelliJ IDEA

Windows

以下あたりにMavenの実行バイナリが存在しているのでここにPATHを通す。

C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.1.2\plugins\maven\lib\maven3\bin

マルチ構成プロジェクトの場合

マルチモジュール構成プロジェクト用実行時オプション · Maven3のはじめかた

参考

Maven – Welcome to Apache Maven
Maven3 チュートリアル

5
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
6