나는 당신이 무엇을 요구하고 있는지 확실하지 않습니다.
작업을 수행하려면 이미 필요한 병과 전쟁을 컴파일해야합니다.
이러한 병과 전쟁이 이미 구축 된 경우 사례에서 설명한대로 <ear>
작업에서 해당 병과 전쟁을 참조하기 만하면됩니다. application.xml
은 귀를 만들기 전에 이미 존재해야합니다. application.xml
은 항아리와 전쟁을 일으키지 않습니다. 그렇게해야합니다.
아직 전쟁과 항아리를 제작하지 않았다면 먼저해야합니다.
<project name="foo" basedir="." default="package">
<!-- Some standard properties you've defined -->
<property name="target.dir" value="${basedir}/target"/>
<property name="xxx" value="yyy"/>
<property name="xxx" value="yyy"/>
<property name="xxx" value="yyy"/>
<!-- Compile properties that allow overrides -->
<property name="javac.nowarn" value="false"/>
<property name="javac.listfiles" value="false"/>
<property name="javac.srcdir" value="source"/>
<property name="javac.distdir" value="${target.dir}/classes"/>
<target name="clean"
description="cleans everything nice and shiny">
<delete dir="${target.dir}"/>
</target>
<target name="compile"
description="Compiles everything">
<mkdir dir="${javac.distdir}"/>
<javac srcdir="${javac.srcdir}"
destdir="${javac.destdir}"
[...]
[...]/>
</target>
<target name="package.jar"
depends="compile"
description="Package jarfile">
<jar destfile="${target.dir}/jarname.jar"
[...]
[...]/>
</target>
<target name="package.jar2"
depends="compile"
description="Package jarfile">
<jar destfile="${target.dir}/jarname2.jar"
[...]
[...]/>
</target>
<target name="package.war"
depends="compile"
description="Package jarfile">
<war destfile="${target.dir}/jarname.jar"
[...]
[...]/>
</target>
<target name="package"
depends="package.jar"
description="Make the ear">
<ear destfile="${target.dir}/earfile.ear"
[...]/>
</target>
</project>
는 기본적으로,이 목표의 무리로 구성되어 있으며 각 대상은 하나 개의 작업을 수행하십시오 build.xml
의 일반적인 개요는 다음과 같이 보인다. 다른 대상에 종속 된 대상을 가질 수 있습니다. 예를 들어이 특정 build.xml
은 자동으로 package
작업을 실행합니다. 패키지 작업은 작업에 따라 달라지는 package.jar
작업에 따라 다릅니다. 따라서 build.xml
파일은 먼저 compile
을 호출 한 다음 package.jar
을 호출하고 package
을 호출합니다.
기억해야 할 중요한 점은 이벤트 순서를 지정하지 않는다는 것입니다. 개미가 그걸 알아 내도록 시켰고 개미가 네가해야 할 일을 알아 내도록 시켰어. Java 소스 파일을 수정했다고 가정 해 보겠습니다. Ant는 하나의 파일 만 다시 컴파일해야한다는 것을 알고 있습니다. 또한 클래스 파일을 포함하는 jar 파일을 다시 빌드해야 할 수도 있음을 알고 있습니다. 그리고, 그것은 귀를 재건해야한다는 것을 알고 있습니다. 대부분의 작업은 스스로 알아낼 수 있으며 각 빌드마다 clean
을 수행하지 않아도됩니다. (clean
대상이 package
또는 compile
에 의해 호출되지 않음을 알게되므로 수동으로 호출해야합니다.)
다른 권장 사항은 작업 영역을 깨끗하게 유지하는 것입니다. 생성 한 모든 파일은 ${target.dir}
디렉토리에 저장해야합니다. 그런 식으로 clean
을 수행하면 해당 디렉토리 하나만 삭제하면됩니다.
이 답변을 귀하의 질문에 보내주십시오.