2009-09-16 2 views
21

Ich habe eine Ameise jar Aufgabe bekam:Wie bei bestimmten Standort-Datei in Jar durch Ant enthalten

<target name="jar"> 
    <jar destfile="${generated.jars.dir}/hello-${environment}.jar"> 
     <fileset dir="${generated.classes.dir}"/> 
     <fileset dir="${environment.dir}/${environment}" includes="config.xml"/> 
    </jar> 
</target> 

Wie kann ich die Datei config.xml zwingen, eher in ein bestimmtes Verzeichnis in das Glas gedrückt werden als in der Root-Ebene, sagen in /database/config.xml oder so ähnlich ...

PS: Der Grund dafür ist, dass ich eine hallo-local.jar, hallo-dev.jar, hallo-qa.jar usw.

Antwort

25

eine zipfileset wie folgt verwenden:

<jar destfile="${generated.jars.dir}/hello-${environment}.jar"> 
    <fileset dir="${generated.classes.dir}"/> 
    <zipfileset dir="${environment.dir}/${environment}" 
       includes="config.xml" 
       fullpath="database/config.xml"/> 
</jar> 
5

Sie möchten zipfileset:

<zipfileset dir="${environment.dir}/${environment}" includes="config.xml" prefix="database"/> 

oder:

<zipfileset dir="${environment.dir}/${environment}" includes="config.xml" fullpath="database/config.xml"/> 
+0

also, wenn ich Sie richtig verstanden, du bist was darauf hindeutet, dass nach dem Glas zu stopfen erstellt wurde die Konfigurationsdatei durch zip? –

+0

Nein, da die <jar> Aufgabe, die Aufgabe <zip> erstreckt unterstützt Verschachtelung zipfileset und zipgroupfileset direkt. –

+0

für das Präfix +1. –

1
<!-- Generate EJBs --> 
    <javadoc destdir="${ejb.build.dir}/src" classpathref="ejb.class.path" docletpath="${wl.home}/lib/ejbgen.jar" doclet="weblogic.tools.ejbgen.EJBGen" maxmemory="512m" docletpathref="class.path" failonerror="true" additionalparam="-descriptorDir ${ejb.build.dir}/src/META-INF -wls81 -forceGeneration"> 
    <fileset dir="${ejb.build.dir}/src" includes="**/ejb/*Bean.java,**/ejb/**/*Bean.java, **/ejb/enterprisemanagement/*EJB.java, **/ejb/sitemanagement/*EJB.java, kaas/gateways/rdm/**" excludes="**/agwmgmt/*.java,**/dstprofilemgmt/*.java, **/KaASBaseSessionBean.java,**/com/hns/iag/kaas/rdm/**">