【问题标题】:copy subfolders to a directory using ant使用ant将子文件夹复制到目录
【发布时间】:2010-02-17 14:31:04
【问题描述】:

我想将许多子文件夹及其内容从其他各种文件夹复制到一个特定文件夹。 我还想使用模式集来选择要复制的子文件夹。 例如,可能有一个文件夹包含许多子文件夹,然后可以再次包含子文件夹。现在我想要一个模式集来获取所有名为 orgcom 或其他名称的文件夹并将它们复制到我喜欢的位置。 我是这样尝试的:

<target name="copysrc">
  <patternset id="set">
    <include name="**/org/**"/>
    <include name="**/com/**"/>
    <include name="**/de/**"/>
    <include name="**/net/**"/>
  </patternset>
  <copy todir="${tmp.dir2}">
    <fileset dir="${tmp.dir}" casesensitive="no">
      <patternset refid="set" />
    </fileset>
  </copy>
</target>

几乎成功了,但我仍然复制了orgcom、...上方的所有文件夹,而不仅仅是orgcom、..以及这些文件夹下面的竞争。

在此先感谢 mojoo.de

【问题讨论】:

  • “我试过这种方式”之后应该有代码吗???检查你的 Markdown。
  • 是的,我不知道为什么它不显示...也许是因为它在 ..
  • @mojoo-de,我修复了你的帖子。您需要缩进带有四个空格的代码才能正确显示(尤其是由浏览器解释的代码)。见:stackoverflow.com/editing-help
  • @mojoo-de,请停止编辑您的帖子。你每次都让 XML 消失!
  • 谢谢,很高兴知道我需要 4 个空格将其标记为代码

标签: java ant copy


【解决方案1】:

好的,现在可以工作了..不得不使用ant contrib包代码看起来像

<target name="copysrc">
<patternset id="zuKopieren">
<include name="org/**"/>
<include name="com/**"/>
<include name="de/**"/>
<include name="net/**"/>
</patternset>
<for param="verzeichnisName">
<dirset dir="${tmp.dir}"></dirset>
<sequential> 
<copy todir="${tmp.dir2}/src">
<fileset dir="@{verzeichnisName}" casesensitive="no"><patternset refid="zuKopieren" />
</fileset>
</copy>
</sequential>
</for>
</target>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 1970-01-01
    • 2013-09-04
    • 1970-01-01
    相关资源
    最近更新 更多