Разница между частными и общедоступными целями в сценариях ant

Недавно я обнаружил, что есть несколько полезных шаблонов (в Eclipse), которые можно добавить в script. И среди них "общественная цель" и "частная цель". И вот шаблоны:

публичная цель

    <!-- ================================= 
          target: name              
         ================================= -->
    <target name="name" depends="depends" description="description">

    </target>

частная цель

    <!-- - - - - - - - - - - - - - - - - - 
          target: name                      
         - - - - - - - - - - - - - - - - - -->
    <target name="name">

    </target>

И я не понимаю. В чем основное отличие? И что означает целевая частная? Это какая-то особенность в сценариях ant или просто украшение кода?

Просто интересно.

Ответы

Ответ 1

Цель, которая имеет описание, является общедоступной, поскольку она появляется при выполнении

ant -projecthelp

Другие считаются закрытыми, потому что они не отображаются по умолчанию.

Ответ 2

Здесь пример

<project name="public_only" default="public">
    <target name="-private">
        <echo message="private" />
    </target>
    <target name="public" description="this task is public" depends="-private">
        <echo message="public" />
    </target>
</project>

Ответ 3

private targets, i.e targets which could not be called by the user called in script itself

while

public can be called by user

вы часто хотите вызвать внутренние/частные цели, чтобы выполнить небольшой шаг в сборке (особенно при разработке новых функций) - вы не можете сделать это, если целевые объекты являются закрытыми. поэтому вы создаете вторую, общедоступную цель, которая вызывает частную цель... и вы в итоге удваиваете размер ваших файлов сборки.