本連載では、独自の Maven リポジトリを構築できるパッケージリポジトリ管理ソフトウェア「Sonatype Nexus」で Maven リポジトリを構築する方法について解説しています。 連載4回目の本稿では、独自に作成した Maven リポジトリに独自ライブラリをデプロイする方法について解説します。
- 第1回 概要編
- 第2回 インストール編
- 第3回 リポジトリ作成編
- 第4回 デプロイ編
リポジトリ情報の確認
まずは本稿で説明を進めるにあたり、Nexusで独自に構築したMavenリポジトリ情報を整理しておきます。 ここでは、前回までの手順に基づいて次のようなリポジトリを作成したこととします。
項目 | 値 |
---|---|
リポジトリのURL | http://nexus.myhost.com:8081/repository/sample-maven-release/ |
ログインアカウント名 | sample |
ログインパスワード | password |
pom.xml の設定
Nexus のリポジトリにデプロイしたい Maven プロジェクトの pom.xml には、次の例のようにデプロイ先となるリポジトリ情報を記述します。 気にしたいのは「ログインアカウントはpom.xmlには書かれない」ことです。 ソースコードを Git などでバージョン管理する際に、そのソースコードの中にアカウント情報が入っているのは危険ですし、チームで開発する際には人ごとにアカウントが違いますよね。 ですので pom.xml にはリポジトリの URL だけが記述されます。
<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">
...
<distributionManagement>
<repository>
<id>releases</id>
<url>http://nexus.myhost.com:8081/repository/sample-maven-release/</url>
</repository>
</distributionManagement>
...
</project>
開発マシンの設定
Nexus のリポジトリにデプロイするためのアカウントは、開発者それぞれがマシンに設定します。 ホームディレクトリ下の .m2 ディレクトリ配下に Settings.xml (~/.m2/settings.xml) に次のような記述を行います。
<?xml version="1.0" encoding="UTF-8"?>
<settings>
<servers>
<server>
<id>releases</id>
<username>sample</username>
<password>password</password>
</server>
</servers>
</settings>
デプロイ
上記のように pom.xml へのリポジトリの記述と、開発マシンにアカウントの設定ができたら、さっそくデプロイを行ってみましょう。 デプロイは mvn deploy コマンドで行えます。
$ mvn deploy
デプロイが完了したら、Nexus サーバの画面にアクセスし、デプロイしたライブラリが実際に追加されたことを確認してみましょう。
次回は利用編
次回は連載の最終回、デプロイしたライブラリを利用してみましょう。 近日執筆予定です。