2009-03-18 21 views
2

jar(未定義の番号)のリストを繰り返し処理し、すべてをjarファイルに追加したいとします。ファイルを反復処理する

<jar id="files" jarfile="all.jar"> 
    <zipfileset src="first.jar" includes="**/*.java **/*.class"/> 
    <zipfileset src="second.jar" includes="**/*.java **/*.class"/> 
</jar> 

が、私は彼らの上にどのように反復ん: は、私はこのようなものを使用することを計画し、それらを追加するには?私は蟻を持っていません

ありがとう!

答えて

4

あなたはant-contribFor taskへのアクセス権を持っていない場合は、あなたが必要なものを行うためのあなたのcustom Taskを定義する必要が終わる可能性が...

あなたは上記のant1.6を持っているとした場合、あなたはまたNew Ant 1.6 Features for Big Projectsを参照してください(subantを試すことができます):

あなたは<subant>年代genericantfile属性を使用する場合、それは一種のタスクが含まれている同じビルドファイルでターゲットを呼び出す<antcall>のように動作します。
<antcall>とは異なり、<subant>はディレクトリのリストまたはセットを受け取り、プロジェクトのベースディレクトリを設定するディレクトリごとにターゲットを1回呼び出します。

これは、任意の数のディレクトリで全く同じ操作を実行する場合に便利です。

+0

はい、それは正解でしょう。私のためにうまくいく!情報をありがとう、http://www.softwarebyrichard.com/content/iterating-through-directory-ant –

4

ただ、これは、すべての付属のjarライブラリのコンテンツを平らにしますZip task

<zip destfile="out.jar"> 
    <zipgroupfileset dir="lib" includes="*.jar"/> 
</zip> 

のAntでzipgroupfilesetを使用しています。

+0

私はこれを試して、それは動作します - しかし、私は瓶を実行するとクラスが存在しないエラーが発生しました - それは彼らがそこにいるのを知らないなら(しかしそれはコンパイルします...) – Yossale

関連する問題