13
21

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 5 years have passed since last update.

メモ : 【Java】pom.xmlに記載するgroupId等の調べ方

Posted at

#背景
いつもSpring(Eclipse)で開発していて、外部ライブラリーを使う時は訳も分からずに
Javaのビルド・パス画面で外部jarの追加をして、使えるようになった~って:slight_smile:やってました。

最近Javaで色々書いてるうちに、あれ?もしやその作業は
プログラムが依存するライブラリを指定するのにpom.xmlに追記するってことなのね
と薄々分かってきました。
背景.png
じゃあもう外部jarの追加から卒業しよう:thumbsup_tone3:って思ったんだけど
あれ?ダウンロードしたjarだけじゃ **<groupId>**が わかんないじゃん:frowning2:というわけで
調べた内容を書き残します。

依存するライブラリを指定するには、
pom.xmlの**<dependencies>タグ内に<dependency>**タグを追加します。こんな感じで
ちなみにこれは、前回のSFTPでRaspberry Piのデータを取得するで使用したjschの記載です。

pom.xml
    <dependencies>
		<dependency>
            <groupId>com.jcraft</groupId>
            <artifactId>jsch</artifactId>
            <version>0.1.54</version>
        </dependency>
    </dependencies>

**<dependency>タグの中には<groupId>``<artifactId>``<version>**の3つの要素があります。
これらを正しく指定することで依存関係を認識してくれるんですね。
#groupId, artifactId, version に指定する値の調べ方
じゃあその要素どうやって書けばいいの~?適当に書いたってダメですよね。
Maven のデフォルトリポジトリは こちら だそうです。
groupId や artifactId に指定する値は、この中に入っています。

じゃあ早速jschを探してみます。com.jcraft・・・と、 あ!本当だ。ありました。
1.png

でも、ものすごい数あるリポジトリから自分の使いたいライブラリーが
どこに入ってるかなんて探し出すの大変すぎ・・・:disappointed_relieved:
2.png

・・・と思っていたら素敵なページを見つけましたー!
**The Central Repository**さんです。リポジトリの検索エンジンです。
3.png

早速、jschを検索してみます。おー!出ました。そしてダウンロードページまで備えています:thumbsup_tone2:素敵~:two_hearts:
4.png

#ライブラリーをpom.xmlに追記する
例としてこのConnectDBというプロジェクトで使用したpostgresqlというライブラリーでやってみます。
sample.javaには、ポスグレに繋いでデータを追加する。って内容のコードを書いています。
それに必要なライブラリーなのですが、例によってワタシは jarの追加 でこのライブラリーを追加しました。
5.png
ビルドパスから除外します。
6.png

そのまま実行すると、もちろんエラーになります。
7.png

先ほどのThe Central Repositoryさんでpostgresqlを検索します。
おー!ありました。Latest(最新)に42.2.4がありましたー!
8.png

では、groupId、artifactId、versionをpom.xmlに追記します。

pom.xml
		<!-- postgresql_adding_at_self_ -->
		<dependency>
			<groupId>org.postgresql</groupId>
			<artifactId>postgresql</artifactId>
			<version>42.2.4</version>
		</dependency>

よーし、これで実行してみます。良かったー。ちゃんと実行できました。
9.png

#あとがき
最近、ぼんやりした点がぼんやりした線になってきたような感覚があります…:open_mouth:
設定ファイルって、色々膨大に謎の文字が羅列されてる得体の知れないモノ(苦手意識の塊)って
思ってたのですが、Javaに限らず設定ファイルって便利だなーってやっと実感できるようになりました。
ワタシのような漠然と設定ファイルに苦手意識をお持ちの方の参考になれば幸いです。

13
21
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
13
21

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?