是否有一个ant命令在一个文件中列出所有目标,这取决于



是否有一个ant命令列出所有目标在一个文件中,有依赖?

现在我只是使用一个小小的shell脚本来匹配包含<target的行,但这不是一个很好的解决方案。有什么内在的命令吗?

最接近的是ant -p(或ant -p -v以获得更多信息)。这不会列出目标依赖项,但我不认为这是一个问题:依赖项对最终用户来说并不重要(它们只是告诉目标如何工作)。

重要的是目标是做什么的,这应该是它的描述:

<target name="foo" depends="bar" description="Does the foo operation">
    ...
</target>

如果你真正想要的是目标依赖关系,那么阅读xml文件是最好的方法。

没有,但是你可以这样做:

<target name="list.targets">
    <xslt in="${basedir}{build.file}"
          out="tmp"
          style="${display.targets.xsl}">
    </xslt>
    <delete file="tmp"/>
</target>
$ {display.targets

。Xsl}指向以下.xsl文件:

<xsl:stylesheet version = '1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
    <xsl:output method='text'/>
    <xsl:template match="/">
        <xsl:for-each select="//target">
            <xsl:sort data-type="text" select="@name"/>
            <xsl:message terminate="no">
Target : <xsl:value-of select="@name"/><xsl:if test="@depends"> depends on : <xsl:value-of select="@depends"/>
                </xsl:if>
                <xsl:if test="@description">
Description : <xsl:value-of select="@description"/>
                </xsl:if>
            </xsl:message>
        </xsl:for-each>
    </xsl:template>
</xsl:stylesheet>

和$ {basedir}{构建。指向当前的build.xml文件。输出将像这样:

 [xslt] Loading stylesheet D:ToolsStackOverFlowtest.xslt
 [xslt]
 [xslt] Target : build
 [xslt]
 [xslt] Target : modify.trs
 [xslt] Description : Modifies .trs file targets
 [xslt]
 [xslt] Target : regex depends on : modify.trs

当然取决于你的build.xml

如果你搜索"ant dependency graph",你会发现一些关于如何从构建文件生成.dot文件的建议,该文件可以通过GraphViz渲染成可视图形。

相关内容

  • 没有找到相关文章

最新更新