0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Maven の導入と Hello World!

Last updated at Posted at 2023-02-09

Maven の導入と Hello World!

目的

Maven で Java プログラムをビルド・実行するシンプルな開発環境を構築します。

実現すること

ローカル環境 (Ubuntu) に Java のプログラムをビルド・実行するツール Maven をインストールします。

技術背景

Maven とは?

こちらを展開してご覧いただけます。

Maven

Maven は、Java プロジェクトをビルドするためのオープンソースのツールです。

以下は、Maven の主な特徴とメリットです。

特徴

  • プロジェクトの構造と依存関係を XML ファイルに定義し、ビルドプロセスを自動化することができます。

  • プロジェクトの依存関係を自動的に解決し、必要なライブラリをダウンロードしてビルドに含めることができます。

  • ビルド時にテストを自動実行することができます。

メリット
  • ビルドプロセスの自動化により、ビルドの一貫性を確保することができます。

  • 依存関係の解決とライブラリのダウンロードを自動化することにより、開発者が手動でライブラリをダウンロードする必要がなくなります。

  • 標準的なディレクトリ構造と命名規則を使用するため、他の Maven プロジェクトとの親和性が高くなります。

  • 様々なプラグインを提供しており、ビルドプロセスに組み込むことができるため、柔軟性があります。

開発環境

  • Windows 11 Home 22H2 を使用しています。
  • WSL の Ubuntu を操作していきますので macOS の方も参考にして頂けます。

WSL (Microsoft Store アプリ版)

> wsl --version
WSL バージョン: 1.0.3.0
カーネル バージョン: 5.15.79.1
WSLg バージョン: 1.0.47

Ubuntu

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.1 LTS
Release:        22.04

Java JDK ※ Java JDK の導入と Hello World!

$ java -version
openjdk version "11.0.17" 2022-10-18
OpenJDK Runtime Environment (build 11.0.17+8-post-Ubuntu-1ubuntu222.04)
OpenJDK 64-Bit Server VM (build 11.0.17+8-post-Ubuntu-1ubuntu222.04, mixed mode, sharing)

※ この記事では基本的に Ubuntu のターミナルで操作を行います。

Maven インストール

存在確認

$ mvn -version
コマンド 'mvn' が見つかりません。次の方法でインストールできます:
※ 以下省略

インストール

$ sudo apt update
$ sudo apt install maven

※アンインストールする場合

$ sudo apt remove maven

バージョン確認

$ mvn -version
Apache Maven 3.6.3
Maven home: /usr/share/maven
Java version: 11.0.17, vendor: Ubuntu, runtime: /usr/lib/jvm/java-11-openjdk-amd64
Default locale: ja_JP, platform encoding: UTF-8
OS name: "linux", version: "5.15.79.1-microsoft-standard-wsl2", arch: "amd64", family: "unix"

Maven を Ubuntu にインストールすることが出来ました。

"Hello World" を表示する手順

プロジェクトフォルダの作成

※ ~/tmp/hello-maven をプロジェクトフォルダとします。

$ cd ~
$ mkdir -p tmp/hello-maven
$ cd ~/tmp/hello-maven

Java ファイルの作成

$ mkdir -p src/main/java/com/example
$ vim src/main/java/com/example/HelloWorld.java

ファイルの内容
※ パッケージを "com.example" としています。

HelloWorld.java
package com.example;

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

pom.xml (Maven) ファイルの作成

$ vim pom.xml

ファイルの内容

pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>hello-maven</artifactId>
    <version>1.0</version>
    <name>hello-maven</name>

    <properties>
        <java.version>11</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.0</version>
                <configuration>
                    <source>${java.version}</source>
                    <target>${java.version}</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>

ディレクトリ・ファイル構成

$ tree
.
├── pom.xml
├── src
│   └── main
│       └── java
│           └── com
│               └── example
│                   └── HelloWorld.java

ビルドと実行

ビルド
※ target/hello-maven-1.0.jar ファイルが作成されます。

$ mvn clean install

実行

$ java -classpath target/hello-maven-1.0.jar com.example.HelloWorld

出力

Hello World!

ターミナルに "Hello World!" と表示することが出来ました。

まとめ

0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?