Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

Locked History Actions

Maven/AntTasks

Maven Ant Tasksの利用方法

Maven Ant Tasksを利用するとmvnコマンドを叩くことなく、antのbuild.xml内でそれらの作業を行うことができる。 以下では、Eclipse上のbuild.xmlでアーティファクトをビルドして、社内リポジトリにデプロイする方法に絞って説明する。

Maven Ant Tasksのインストール

単純にMaven Ant Tasksのウェブサイトからjarファイルをダウンロードする (2010/7時点ではmaven-ant-tasks-2.1.1.jar)。

これを置く場所としては様々である。

  • c:\documents and settings\ユーザ名\.antフォルダを作成してその中に置く。
  • eclipseのインストールディレクトリのpluginsの中にあるantのフォルダのlibディレクトリに置く。
  • 好きなところに置く。この場合、eclipseのant実行時のクラスパス指定を行う必要がある。

※eclipse環境の場合は、これらを行っても自動的には追加されない模様。ウインドウ>設定>Ant>ランタイムのクラスパスに明示的に指定する必要がある。

pomファイルの用意

mvnコマンドと異なり、Maven Ant Tasksには実行時にgroupIdやartifactIdを指定する仕組みが無い。 これらはすべて「指定されたpomファイル」から取得される。 これをあらかじめ作っておくべきであるが、しかしバージョン番号等はその都度変更したいので、antで自動生成させた方がよいと思われる。 例えば、以下のようなpom.xmlを作成しておくか、自動生成させる。

<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>lipermimod</groupId>
  <artifactId>lipermimod</artifactId>
  <version>0.9.0</version>
  <description>lipermimod POM file</description>
</project>

build.xmlの変更

既にプロジェクトにはbuild.xmlが存在すると仮定する。これをprojectタグ部分を以下のように変更する。

<project 
  xmlns:....  <--- もしあれば他の名前空間の指定
  xmlns:artifact="antlib:org.apache.maven.artifact.ant"
  xmlns:....  <-- もしあれば他の名前空間の指定
  default="all">

ローカルリポジトリにインストールする場合

ローカルリポジトリにインストールする場合には以下のようなtargetを記述する。 mypom.xmlは先に作成したPOMファイル、test.jarはアーティファクトjarファイルである。

<target name="install-local">
  <artifact:pom id="mypom" file="mypom.xml" />
  <artifact:install file="test.jar">
    <pom refid="mypom"/>
  </artifact:install>
</target>       

社内リポジトリ等にデプロイする場合

社内リポジトリ等にデプロイする場合は以下のように記述する。

<target name="deploy-inhouse">
  <artifact:pom id="mypom" file="mypom.xml" />  
  <artifact:deploy file="test.jar">
  <remoteRepository url="http://192.168.0.1/maven2/repos"/>
    <pom refid="mypom"/>
  </artifact:deploy>
</target>       

なお、デプロイ先の指定には、http, ftp, scp等の様々なプロトコルが使用可能である。 file://localhost/test」とすると、Windowsの場合には「c:\test」というフォルダが作成されてそこにインストールされる。

なお、ローカルリポジトリへのインストールではチェックサムは作成されないが、デプロイでは自動的にmd5, sha1チェックサムが生成される。