2009-09-14 8 views
7

誰かがAntにMaven依存関係を追加する技術を見ているのかどうか疑問に思っていました。私はアイビーがこれを行うことを意図していたと思ったが、それは依存性管理のためのアリスタイルのツールに過ぎないことに気づいた。Mavenリポジトリを使ってAntに依存関係を追加する方法はありますか?

誰かがMavenの依存関係(おそらくオープンソースライブラリのみ)を参照できるようにAntを拡張した場合、AntはMavenの少なくとも1つの優れた機能を、ホイールを再発明する必要なくピギーバックできます。

どのような考えですか?

答えて

12

Mavenには、Antのlibディレクトリにダウンロードして置くことができる一連のMaven Antタスクがあります。その後、POMの依存関係によって定義されるAntでクラスパスを宣言することができます。これは、build.xmlで宣言できるものの例です。

<artifact:dependencies filesetId="deps.fileset" type="jar"> 
    <pom file="mypom.xml"/> 
</artifact:dependencies> 

詳細はherehereを見つけることができます。

+0

詳細を教えてください。私はMavenとAntを使用していて、まだこれを理解しようとしています。ありがとう。 –

1

Mercuryにはant tasksのセットがあり、依存関係管理タスクの実行、設定(サーバー証明書など)の指定、antパスの変更/変更、リポジトリへの書き込みができます。詳細はthis blogを参照してください。

アリのためにMaven tasksもありますが、完全には機能していません。 MavenはMercury(特にMaven3)に移行していますので、Mercuryのタスクを使用するのが理にかなっています。

次の設定は、指定されたPOMから依存関係を読み取り、その結果パスで指定された変数を取り込みます

<path id="my.compile.path"> 
    <deps> 
    <dependency name="groupId:artifactId:1.0::pom" 
     pom="${basedir}/artifactId-1.0.pom"/> 
    </deps> 
</path> 
関連する問題