maven用社内リポジトリを構築する

自作やベンダー提供のライブラリをプロジェクトで利用する場合、社内リポジトリを利用するのが一般的のようです。
そこで今回は社内リポジトリを構築して見たので、忘れないようにまとめてみます。

参考にしたサイトは以下の通りです。感謝。

nulab 構成管理実践入門
http://www.nulab.co.jp/kousei/chapter1/01.html
Ussy Diary インハウスリポジトリサードパーティのライブラリをデプロイする
http://www.pshared.net/diary/20090212.html
はじめての自宅サーバ構築
http://kajuhome.com/

webdav構築

まず、社内リポジトリの公開用環境としてWebDAVを構築します。
構築方法は、ここを参考にしました。
ただ、WebDAVの設定ファイルがそのままでは使えませんでした。
私の環境だけかもしれませんが一応設定を書いておきます。

# vi /etc/httpd/conf.d/webdav.conf
#
# This is to permit URL access to WebDav.
#
Alias /webdav/ "/var/www/html/webdav/"
<IfModule mod_dav.c>
    DAVMinTimeout 600
    <Location /webdav>
        DAV On
        AuthType        Basic
        AuthName        "Login WebDAV"
        AuthUserFile    "/etc/httpd/conf/.htpasswd"
        Require "$WebDAVログイン用ユーザID"
        Order deny,allow
        Deny from all
        Allow from all
    </Location>
</IfModule>

これで/var/www/html/webdav/に社内リポジトリとして利用できる環境ができました。
また、アクセスする際にはBASIC認証がかかります。

pom.xmlの編集

次にここを参考にpom.xmlを編集して、社内リポジトリを利用できるようにします。
私の場合、以下の項目を参照しました。

mvnコマンドでjarファイルを設置

これでライブラリを社内リポジトリに設置できるようになりました。
設置方法はここの「リモートリポジトリにサードライブラリのソースをデプロイ」を参照しました。
このサイトだとscpを使って設置していますが、私の環境だとWebDAVなので

-Durl=scp://192.168.10.10/home/maven2

という記述が

-Durl=http://192.168.10.10/home/maven2

となります。


これで、社内リポジトリにライブラリを追加できました。
あとは実際にプロジェクトの依存関係に追加してあげられば利用できるようになります。