2012-07-31 112 views
7

在NAnt脚本的末尾,最后一步是创建一个ZIP文件。在NAnt的zip文件中创建文件夹

目前,我这样做:

<zip zipfile="${target.dropfile}"> 
    <fileset basedir="${somefolder}"> 
     <include name="file1.dll" /> 
    </fileset> 
    <fileset basedir="${someotherfolder}"> 
     <include name="file2.dll" /> 
    </fileset> 
    <!-- ...etc ... --> 
</zip> 

这工作得很好,但我想zip文件是一个小更有条理。我希望zip文件包含两个文件夹folder1和folder2,并且我希望file1.dll位于folder1和file2.dll中,位于folder2中。在<zip />任务中有没有办法做到这一点?

回答

6

只需使用前缀变量即可。

<zip zipfile="${target.dropfile}"> 
    <fileset basedir="${somefolder}" prefix="folder1"> 
     <include name="file1.dll" /> 
    </fileset> 
    <fileset basedir="${someotherfolder}" prefix="folder2"> 
     <include name="file2.dll" /> 
    </fileset> 
    <!-- ...etc ... --> 
</zip> 
+0

我在元素上得到了'意外的属性'前缀'。' - 我使用旧版本的NAnt吗? – 2012-07-31 20:17:56

+0

看起来像我在0.91 ... – 2012-07-31 20:18:40

+0

所以它看起来应该把前缀放在文件集上,而不是在包含(更正) – 2012-07-31 20:28:26