2014-10-28 35 views
0

我需要將一些第三方jar文件包含到我的項目jar文件中。我在我的build.xml中提到它,並將其包含到MANIFEST.MF中。現在我將thirdparty1.jar thirdparty2.jar文件放入項目jar中。但仍然無法使用罐子。難道不需要任何另外的配置如何在創建jar文件時包含庫文件而不單獨複製庫

這裏是我的build.xml

<manifest>   
    <attribute name="Class-Path" value="thirdparty1.jar thirdparty2.jar thirdparty3.jar"/> 

如果我單獨複製兩個罐子效果很好。但我不明白什麼是需要分開復制這些。它如何解決與分開復制罐子。

回答

0

也可以使用zipgroupfileset for.given是這個示例的ant任務。

<!-- Build JAR file --> 
<target name="jar" depends="init-build-dir,compile-main"> 
<!--creating a temp jar contains all jar --> 
    <jar jarfile="${project.build.lib.dir}/external-libs.jar"> 
     <zipgroupfileset dir="${project.lib.redist.dir}"> 
      <include name="**/*.jar" /> 
     </zipgroupfileset> 
    </jar> 
    <sleep seconds="1" /> 
    <!-- creating main jar with temp jar--> 
    <jar jarfile="${project.build.lib.dir}/${ant.project.name}.jar" manifest="MANIFEST.MF"> 
     <fileset dir="${project.build.main.classes.dir}" includes="**/*.*" /> 
     <zipfileset src="${project.build.lib.dir}/external-libs.jar"> 
      <exclude name="*" /> 
     </zipfileset> 
    </jar> 
    <!--removing temp jar --> 
    <delete> 
     <fileset dir="${project.build.lib.dir}"> 
      <include name="external-libs.jar" /> 
     </fileset> 
    </delete> 
</target> 
相關問題