2017-02-28 14 views
0

Antビルドファイルに問題があります。全体の設定は遺産で、私は本当にアリに精通していないので、私はアリのマニュアルを試して、interwebsを検索しても、私はまだ満足のいく答えがありません。私はこのスニペットを持っている:antに複数のファイル拡張子を含める

私もちょうど抽出アーカイブから.classファイルの代わりに、(JNIを使​​用する)「* .soが」ファイルを含める
 <jar destfile="${dist.dir}/${ivy.module}.jar"> 
      <fileset dir="${build.classes.dir}"/> 
      <restrict> 
       <name name="**/*.class"/> 
       <archives> 
        <zips> 
         <fileset dir="${build.lib.dir}" includes="**/*.jar"/> 
        </zips> 
       </archives> 
      </restrict> 
      <manifest> 
       <attribute name="Manifest-Version" value="1.0"/> 
       <attribute name="Created-By" value="${version} (${verndor.name})"/> 
       <attribute name="Client-Version" value="${version}"/> 
       <attribute name="Build-Number" value="${custom.build-number}"/> 
       <attribute name="Main-Class" value="${main.class}"/> 
      </manifest> 
     </jar> 

。それをする最善の方法は何ですか?私が言ったように、アリマニュアルはむしろあいまいです。アドバンス

+0

[ファイルセットのドキュメント](http://ant.apache.org/manual/Types/fileset.htmlが) 'includes'属性が「カンマが含まれていることを述べて含まれなければならないファイルのパターンのスペース区切りのリスト。 "私にはまったくあいまいではありません。 – VGR

+0

答えをありがとうが、私はその部分について話していません。 afacのincludeステートメントはすべての.jarファイルを選択するのに、 ですが、私が見ているように、タグは実際にはすべての.classファイルをjarファイルを新しいjarファイルに入れて、ここでフィルタを変更する方法がわかりません。私はすでにのように名前タグを変更しようとしましたが、これらのjarのすべてが除外されています。 –

+0

私の間違い、私は誤解しました。 – VGR

答えて

0

おかげ<restrict> documentationリスト可能ネストされたセレクタ。あなたは、複数のパターンを指定する<or>を使用することができます。

<restrict> 
    <or> 
     <name name="*.class"/> 
     <name name="path/to/libsomething.so"/> 
    </or>