Ant-데이터 유형

Ant는 사전 정의 된 여러 데이터 유형을 제공합니다. "데이터 유형"이라는 용어를 프로그래밍 언어에서 사용할 수있는 것과 혼동하지 말고 대신 이미 제품에 내장 된 서비스 세트로 간주하십시오.

다음 데이터 유형은 Apache Ant에서 제공합니다.

파일 세트

파일 세트 데이터 유형은 파일 모음을 나타냅니다. 특정 패턴과 일치하는 파일을 포함하거나 제외하기위한 필터로 사용됩니다.

예를 들어, 다음 코드를 참조하십시오. 여기에서 src 속성은 프로젝트의 소스 폴더를 가리 킵니다.

파일 세트는 'Stub'이라는 단어가 포함 된 파일을 제외하고 소스 폴더의 모든 .java 파일을 선택합니다. 대소 문자 구분 필터가 파일 세트에 적용됩니다. 이는 이름이 Samplestub.java 인 파일이 파일 세트에서 제외되지 않음을 의미합니다.

<fileset dir = "${src}" casesensitive = "yes">
   <include name = "**/*.java"/>
   <exclude name = "**/*Stub*"/>
</fileset>

패턴 세트

패턴 세트는 특정 패턴을 기반으로 파일 또는 폴더를 쉽게 필터링 할 수있는 패턴입니다. 패턴은 다음 메타 문자를 사용하여 만들 수 있습니다-

  • ? − 한 문자 만 일치합니다.

  • * − 0 개 또는 많은 문자와 일치합니다.

  • ** − 0 개 또는 많은 디렉터리를 재귀 적으로 일치시킵니다.

다음 예제는 패턴 세트의 사용법을 보여줍니다.

<patternset id = "java.files.without.stubs">
   <include name = "src/**/*.java"/>
   <exclude name = "src/**/*Stub*"/>
</patternset>

패턴 세트는 다음과 같이 파일 세트와 함께 재사용 할 수 있습니다.

<fileset dir = "${src}" casesensitive = "yes">
   <patternset refid = "java.files.without.stubs"/>
</fileset>

파일 목록

파일 목록 데이터 유형은 다음 차이점을 제외하고 파일 세트와 유사합니다.

  • filelist는 명시 적으로 명명 된 파일 목록을 포함하며 와일드 카드를 지원하지 않습니다.

  • filelist 데이터 유형은 기존 또는 존재하지 않는 파일에 적용 할 수 있습니다.

파일 목록 데이터 유형의 다음 예를 살펴 보겠습니다. 여기에서 속성webapp.src.folder 프로젝트의 웹 애플리케이션 소스 폴더를 가리 킵니다.

<filelist id = "config.files" dir = "${webapp.src.folder}">
   <file name = "applicationConfig.xml"/>
   <file name = "faces-config.xml"/>
   <file name = "web.xml"/>
   <file name = "portlet.xml"/>
</filelist>

필터 세트

복사 작업과 함께 filterset 데이터 유형을 사용하면 패턴과 일치하는 모든 파일의 특정 텍스트를 대체 값으로 바꿀 수 있습니다.

일반적인 예는 다음 코드와 같이 릴리스 정보 파일에 버전 번호를 추가하는 것입니다.

<copy todir = "${output.dir}">
   <fileset dir = "${releasenotes.dir}" includes = "**/*.txt"/>
   
   <filterset>
      <filter token = "VERSION" value = "${current.version}"/>
   </filterset>
</copy>

이 강령에서-

  • 속성 output.dir 프로젝트의 출력 폴더를 가리 킵니다.

  • 속성 releasenotes.dir 프로젝트의 릴리스 정보 폴더를 가리 킵니다.

  • 속성 current.version 프로젝트의 현재 버전 폴더를 가리 킵니다.

  • 이름에서 알 수 있듯이 복사 작업은 한 위치에서 다른 위치로 파일을 복사하는 데 사용됩니다.

통로

그만큼 path데이터 유형은 일반적으로 클래스 경로를 나타내는 데 사용됩니다. 경로의 항목은 세미콜론 또는 콜론을 사용하여 구분됩니다. 그러나 이러한 문자는 실행시 실행 시스템의 경로 구분 문자로 대체됩니다.

클래스 경로는 아래 예제와 같이 프로젝트의 jar 파일 및 클래스 목록으로 설정됩니다.

<path id = "build.classpath.jar">
   <pathelement path = "${env.J2EE_HOME}/${j2ee.jar}"/>
   
   <fileset dir = "lib">
      <include name = "**/*.jar"/>
   </fileset>
</path>

이 코드에서-

  • 속성 env.J2EE_HOME 환경 변수를 가리킴 J2EE_HOME.

  • 속성 j2ee.jar J2EE 기본 폴더에있는 J2EE jar 파일의 이름을 가리 킵니다.