如何在构建脚本中使用XCopy而不是在Windows中复制

时间:2012-06-21 06:57:41

标签: xml build command-prompt nant xcopy

早先将我的dot-net项目部署到我的远程服务器中,我在nant构建配置文件中使用了 copy 命令。命令如下所示。

<target name="Deploy">
    <copy  todir="${path.to.the.directory}" overwrite="true">
        <fileset basedir="${Bin.Path}">
            <include name="*.*" />          
        </fileset>
    </copy>
</target>

现在,当我的项目增长时,我的$ [bin.path]文件夹中有两个新文件夹,现在我无法使用 copy 命令将我的可执行文件复制到输出文件夹。

有人可以建议我做什么。

搜索后我发现我可以使用 XCopy 。但我没有得到如何将其集成到我的构建脚本中,类似于上面显示的那样。

感谢您的帮助。

1 个答案:

答案 0 :(得分:5)

我想知道为什么你得出的结论是你不能使用<copy>任务。

如果您需要将子文件夹包含在副本集中,请将您的NAnt脚本更改为:

<target name="Deploy">
    <copy  todir="${path.to.the.directory}" overwrite="true">
        <fileset basedir="${Bin.Path}">
            <include name="**\*.*" />          
        </fileset>
    </copy>
</target>

如果您不想将文件夹结构保留在目标目录中,可以使用flatten任务的<copy>属性:

<target name="Deploy">
    <copy  todir="${path.to.the.directory}" overwrite="true" flatten="true">
        <fileset basedir="${Bin.Path}">
            <include name="**\*.*" />          
        </fileset>
    </copy>
</target>

希望这有帮助。