2013-10-27 41 views
1

有沒有辦法將某些文件包含到war類文件夾中? Eclipse構建了戰爭權利,但是我的ant腳本不能將文件包含到classes文件夾中。將文件包含在war類文件夾中

... 
    <property name="src.dir" location="src" /> 
    <property name="build.dir" location="build" /> 
    <property name="classes.dir" location="${build.dir}/classes" /> 

    <target name="war" depends="mklib, retrieve, compile"> 
    <war destfile="${war.file}" webxml="${webContent.dir}/WEB-INF/web.xml"> 
     <classes dir="${classes.dir}" /> 
     <fileset dir="${webContent.dir}" excludes="**/servlet-api*.jar,**/jsp-api*.jar" /> 
     <fileset dir="${classes.dir}" includes="**/*.xml,**/*.sql" /> 
    </war> 
</target> 
... 
+0

? – 2013-10-27 14:32:53

+0

xml和sql文件,試圖將em包含在這一行上: ...但它失敗。 – RassK

回答

2

我想感謝你,花了一點時間思考這個解決方案。 反正我需要的是更簡單的

<target name="war" depends="mklib, retrieve, compile"> 
    <war destfile="${war.file}" webxml="${webContent.dir}/WEB-INF/web.xml"> 
     <classes dir="${classes.dir}" /> 
     <classes dir="${src.dir}" includes="**/start.xml, **/per*.xml, **/*.sql" /> 
     <fileset dir="${webContent.dir}" excludes="**/servlet-api*.jar,**/jsp-api*.jar" /> 
    </war> 
</target> 

所有需要做的是編寫包括或包括屬性,你想走哪包括類

1

<classes/>子實體可用於東西除了*.class文件。所有<classes/>子實體不會被放在WEB-INF/classes目錄中的戰爭中指定的文件:

<target name="war" depends="mklib, retrieve, compile"> 
<war destfile="${war.file}" webxml="${webContent.dir}/WEB-INF/web.xml"> 
    <classes dir="${classes.dir}" /> 
    <classes dir="${resources.dir}"/> <!-- Other files that are in WEB-INF/classes --> 
</war> 

(我會用你的榜樣,但你必須<fileset dir="${classes.dir}"這意味着你把東西在你的${classes.dir}(在這裏你將你的戰爭的根源,可能不是你想要的。(

編譯代碼)也可以使用<zipfileset/>而不是純<fileset><zipfileset>通吃相同的參數和子實體作爲<fileset>,但還包括一個prefix參數,您可以在其中指定前綴ix目錄:

<target name="war" depends="mklib, retrieve, compile"> 
<war destfile="${war.file}" webxml="${webContent.dir}/WEB-INF/web.xml"> 
    <classes dir="${classes.dir}" /> 
    <classes dir="${resources.dir}"/> 
    <zipfileset prefix="foo/resources" 
     dir="${foo.dir}"> 
     <include name="**/*.foo"/> 
    </zipfileset> 
</war> 
相關問題