#contents

*概要 [#h278a94f]

このページには、maven.seasar.orgのMaven2レポジトリへリリース物をデプロイする方法について記述します。
(主にS2Containerプロダクトについて記述しますが、他のプロダクトでも同じ手順でOKと思います。)

対象者: seasar.orgにアカウントを持っていて、公開鍵登録を済ましている開発者

その他のMaven情報については MavenInformation を参照してください。

*準備 [#vb33727e]

**初回のみ行うこと [#h9722e92]

1度行えば良いモノ。

- Maven2をインストールする。
-- 参照: http://maven.apache.org/download.html
- seasar.orgへのアカウントを取得し、秘密鍵を持っていること。
-- 秘密鍵はOpenSSH形式である必要があります。普段puttyを使っている方はputtygen等で変換しておいてください。
- seasar.orgへのSSHログイン権限を持っていること。
-- 持っていない場合は申請してください。
- プロダクトのartifactId・groupIdを決める。
- プロダクトでMaven2を利用するための申請を行うこと。
-- 承認されれば、deployしたいartifactが属するプロジェクトのgroupIdに対応するディレクトリが、プロジェクト配下のディレクトリへのシンボリックリンクとして用意されます。
-- シンボリックリンクが作られていない場合はoperation MLへお問い合わせ下さい。
- ${user.home}に".ssh"ディレクトリが無い場合は作成しておく。

**毎回必要なこと [#s9488b06]

デプロイ時に毎回行うモノ。

- pom.xmlの"version"をこれからデプロイする番号へ変更しているか確認すること。
-- (パッケージングにantを使用している場合はbuild.xmlも)

*プロジェクト設定(pom.xml) [#m0b97a67]

pom.xmlにデプロイ先レポジトリを記述します。
# s2containerのpom.xmlを参考にしてください。

  <distributionManagement>
    <repository>
      <uniqueVersion>false</uniqueVersion>
      <id>maven.seasar.org</id>
      <name>The Seasar Foundation Maven2 Repository</name>
      <url>scp://maven.seasar.org/home/groups/maven/public_html/maven2</url>
      <url>scp://maven.seasar.org/home/groups/maven/maven/maven2</url>
    </repository>
  </distributionManagement>

*環境設定(settings.xml) [#lffd762c]

${user.home}/.m2/ に settings.xml というXMLファイルを作成します。

 <?xml version="1.0" encoding="UTF-8"?>
 <settings>
   <servers>
     <server>
       <id>maven.seasar.org (pom.xmlに書かれているrepositoryのidと合わせる)</id>
       <username>(ユーザ名)</username>
       <privateKey>(秘密鍵への絶対パス)</privateKey>
       <passphrase>(秘密鍵のパスフレーズ)</passphrase>
       <filePermissions>664</filePermissions>
       <directoryPermissions>775</directoryPermissions>
     </server>
   </servers>
 </settings>

※パスフレーズを記述するため、settings.xmlの取り扱いには気をつけてください。

*デプロイ実行 [#vf3421b4]

pom.xmlが置かれているディレクトリで次のコマンドを実行してください。

 mvn clean source:jar javadoc:jar deploy -DupdateReleaseInfo=true

※s2container, s2jsf, s2dao, teedaはpom.xmlで設定してありますので、↓のコマンドでOKです。

 mvn clean deploy

成功すると、リモートレポジトリへデプロイされます。
(クリーンビルド → 単体テスト実行 → jarファイル作成 → Maven2リモートレポジトリへのデプロイ、が行われます。)

配布zipアーカイブの作成にはantを使用しているので、続けて

 ant dist

してzipを作成してください。

※zip等の配布アーカイブを作成する場合は、Maven2リポジトリへデプロイしたjarを配布アーカイブに含めるように気をつけてください。(再度ビルドしないように)

*エラー集 [#n90e7371]

 [WARNING] repository metadata for: 'snapshot groupId:artifactId:version' 
 could not be retrieved from repository: maven.seasar.org due to an error: 
 Authentication failed: Cannot connect. Reason: Auth fail
 [INFO] Error deploying artifact: Authentication failed: Cannot connect. Reason: Auth fail

- settings.xml ファイルがない場合、ファイル名が誤っている場合
- パスフレーズが間違っている場合
- 鍵のパスが間違っている場合

*コメント [#ha81887e]

#comment


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS