maven2導入TIPSその3〜社内リポジトリ

断言しますが、複数人で開発している場合は社内リポジトリは必須です!!

  • 公開リポジトリに無いjarの登録
  • 社内ライブラリの登録場所

特にこれらは超重要。
ちなみに公開リポジトリに無いjarの登録については登録する場所を全員で登録しておいた方がいいです。
最初適当にしてたら、重複jarがガンガン登録されてたし…

必要な設定は以下の通り。アップはFTP、取得はHTTPにしています。

pom.xml
〜
	<repositories>
		<repository>
			<snapshots>
				<updatePolicy>always</updatePolicy>
			</snapshots>
			<id>my.repository</id>
			<name>my.repository</name>
			<url>http//my.repository/repository</url>
		</repository>
	</repositories>
〜
	<distributionManagement>
		<repository>
			<id>my.repository</id>
			<url>ftp://my.repository/repository</url>
		</repository>
		<site>
			<id>my.repository</id>
			<url>
				ftp://my.repository/repository/site/${project.name}
			</url>
		</site>
	</distributionManagement>
〜

settings.xml

  <servers>
    <!-- 社内リポジトリFTP -->
    <server>
      <id>my.repository</id>
      <username>username</username>
      <password>password</password>
    </server>
  </servers>

ってな感じで、通常のデプロイ、サイトデプロイが可能となります。


注意事項

  • ftpデプロイについて

現在(2008/04/08)のwagon-ftpmavenFTPデプロイ用プラグイン)はディレクトリのアップができないとか信じられないエラーが出て、失敗します。↓のサイト見て自分でビルドして使用しています。
Maven2/TIPS集 - きのさいと

  • repositoryのsnapshots要素

これもハマリポイント!これが無いと一回デプロイしたバージョンを他の人が取得すると、再デプロイしても取得してくれません。
updatePolicy要素に設定して間隔で取得に行くようです。LAN中の社内リポジトリならalwaysにしておいた方が問題は少ないと思います。