Eclipseでライブラリを使う方法 ~Mavenプロジェクト編~

Java
この記事は約9分で読めます。

この記事の目的

EclipseでJavaライブラリを使ったプログラムを実行する方法を紹介します。

この記事では「ビルドツールMavenを利用してJavaライブラリを使う方法」を紹介します。

Mavenを使うと、ライブラリのダウンロードを手作業で行う必要がなくなるためとても便利です。

Eclipseのバージョンは執筆時点の最新版「Pleiades All in One Eclipseのバージョン2021-12」を使っています。

手順

Mavenプロジェクトの新規追加

パッケージ・エクスプローラーから追加

適当なところで右クリック > 「新規」を選択 > 「Mavenプロジェクト」をクリックしてください。

新規Mavenプロジェクト ~1ページ目~

「シンプルなプロジェクトの作成」にチェックを入れ、「次へ」をクリックします。

今回は簡単なプログラムを実行するだけなので、シンプルなプロジェクトを利用します。開発するプログラムによっては、アーキタイプを選択したほうが便利な場合もあります。

新規Mavenプロジェクト ~2ページ目~

グループidとアーティファクトidに下記を入力し、「完了」をクリックします。

  • グループid:com.ottfoekst ※例なので好きな文字列を入力しても構いません。
  • アーティファクトid: eclipse-maven-project

Mavenプロジェクトの新規追加完了

Mavenプロジェクト「eclipse-maven-project」を追加できました。

Java 11を使うするようにする

Mavenプロジェクトは、デフォルトでJava 5(J2SE-1.5)を使うようになっています。

さすがに古すぎるのでJava 11を使うように修正しましょう。

pom.xmlを開く

pom.xmlを開きます。

Mavenではpom.xmlというXMLファイルを編集することで、ビルドの設定をしたり、ライブラリを使えるようにしたりできます。

pom.xmlの編集

8行目~19行目を追加して保存します。

<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.ottfoekst</groupId>
	<artifactId>eclipse-maven-project</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.8.0</version>
				<configuration>
					<release>11</release>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>

Java 11を使うように変更完了

「JavaSE-11」に表示が変わり、Java 11を使うようになりました。

保存してもJava 11を使うようにならない場合は、プロジェクト名を右クリック > 「Maven」を選択> 「プロジェクトの更新」をクリックしてください。

新規クラスの追加

パッケージ・エクスプローラから追加

先ほど作成した「eclipse-maven-project」の「src/main/java」を右クリック > 「新規」を選択 > 「クラス」をクリックします。

新規Javaクラス

『新規Javaクラス』画面が開きます。これから赤枠で囲まれた部分を書き換えます。

下記のように書き換え、最後に「完了」をクリックします。

  • 好きなクラス名(画像では「HelloApacheCommonsLang」)を入力
  • 「スーパークラス」を空に
  • 「public static void main(String[] args)」にチェックを入れる

新規クラスの追加完了

新規クラス「HelloApacheCommonsLang」を追加できました。

新規クラスの中身を修正

プログラムを修正して保存

「HelloApacheCommonsLang.java」を下記のように修正して保存します。

import org.apache.commons.lang3.StringUtils;

public class HelloApacheCommonsLang {

	public static void main(String[] args) {
		System.out.println(StringUtils.substringBetween("★星の中★", "★"));
	}

}

エラーが発生

下記のとおりエラーが発生してしまいます。

「Apache Commons Lang」というライブラリがまだ使えないためなので、修正が必要です。

ライブラリを使えるようにする

Maven Repositoryのサイトを開く

ライブラリを使えるようにするには、pom.xmlの編集が必要です。

pom.xmlに記載する内容を調べるために、Maven Repositoryのサイトを開きます。

Please Wait... | Cloudflare

「Apache Commons Lang」で検索

サイト上部の検索窓に「apache commons lang」を入力して検索します。

検索結果の1件目に表示された「Apache Commons Lang」をクリックします。

「Apache Commons Lang」のページが表示されます。

今回は最新版を使うので、「3.12.0」をクリックします。

<dependency>~</dependency>で囲われた部分をクリックします。

すると自動でクリップボードにコピーされて、どこかに貼り付けられる状態になります。

pom.xmlを修正する

先ほどコピーした内容を使って、pom.xmlを下記のとおり修正します。

先ほどコピーした内容を貼り付けるだけではなく、<dependencies>~</dependencies>で囲う必要があることに注意してください。

<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.ottfoekst</groupId>
	<artifactId>eclipse-maven-project</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<dependencies>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>3.12.0</version>
		</dependency>
	</dependencies>
	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.8.0</version>
				<configuration>
					<release>11</release>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>

エラー解消

pom.xmlの修正を保存すると、ライブラリが使えるようになってエラーが解消されます。

保存してもエラーが解消されない場合は、プロジェクト名を右クリック > 「Maven」を選択> 「プロジェクトの更新」をクリックしてください。

プログラムを実行する

プログラムを実行

プログラムの実行する手順はいくつかありますので、その一例を紹介します。

mainメソッドを右クリック > 「実行」を選択 > 「Javaアプリケーション」をクリックします。

実行結果

文字列「★星の中★」に対して、「★」に囲まれた文字列を出力するプログラムですので、「星の中」が出力されます。

コメント

タイトルとURLをコピーしました