包含/排除构建文件

发布于 2024-10-16 06:07:40 字数 1007 浏览 5 评论 0原文

你如何做到这一点?给定几个构建文件,我只想包含目标(从命令行指定)存在的文件。使用 target::exists in 似乎不起作用。谢谢。

    <target name="*">
        <property name="curr.target" value="${target::get-current-target()}"/>

        <nant target="${curr.target}">
            <buildfiles>                    
                <include name="*.build" if="${target::exists(curr.target)}"/>
                <!-- avoid recursive execution of current build file-->
                <exclude name="${project::get-buildfile-path()}" />                    
            </buildfiles>                               
        </nant>
    </target>

使用 robaker 的解决方案,我的最终构建文件如下所示。如果在某个构建文件中找不到目标(与我之前的代码不同),它不会再失败。

<project>
   <include buildfile="A.build"/>
   <include buildfile="B.build"/>

   <target name="*">
      <nant target="${target::get-current-target()}"/>
   </target>
</project>

How do you do this? Given several build files, I only want to include the ones where the target (specified from the command line) exists. Using target::exists in does not seem to work. Thanks.

    <target name="*">
        <property name="curr.target" value="${target::get-current-target()}"/>

        <nant target="${curr.target}">
            <buildfiles>                    
                <include name="*.build" if="${target::exists(curr.target)}"/>
                <!-- avoid recursive execution of current build file-->
                <exclude name="${project::get-buildfile-path()}" />                    
            </buildfiles>                               
        </nant>
    </target>

Using robaker's solution, my final build file looks like this. It does not fail anymore if the target is not found in a certain build file (unlike my previous code).

<project>
   <include buildfile="A.build"/>
   <include buildfile="B.build"/>

   <target name="*">
      <nant target="${target::get-current-target()}"/>
   </target>
</project>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

反差帅 2024-10-23 06:07:40

为什么不直接使用 包含任务 来包含所有子构建脚本代替?

Why not just use the include task to include all your child build scripts instead?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文