개미
Ant 는 구축 도구 로 작은 프로그램 입 니 다.그러나 이 는 모든 컴 파일 코드 를 자동 으로 완성 하고 테스트 를 실행 하 며 재배 치 결과 등 번 거 로 운 임 무 를 수행 하여 소프트웨어 팀 이 큰 프로그램 을 개발 하 는 데 도움 을 준다.
Ant 는 자바 로 작성 되 고 플랫폼 을 뛰 어 넘 으 며 사용 하기 쉽 고 신축 이 가능 합 니 다.소형 개인 프로젝트 에 도 사용 할 수 있 고 대형 멀 티 팀 소프트웨어 프로젝트 에 도 사용 할 수 있다.
Ant 의 목 표 는 모든 구축 과정 을 자동 으로 완성 하 는 것 이다.
Ant 의 핵심 개념
빌 드 파일: - build. xml
• Ant 는 구축 파일 이 라 고 불 리 는 xml 파일 을 사용 하여 프로젝트 를 어떻게 구축 하 는 지 설명 합 니 다. 이 파일 에서 개발 자 는 각종 구축 목표 (target) 와 이 목 표를 달성 하 는 작업 (task) 을 보 여 줍 니 다.
빌 드 파일 에는 프로젝트 - procject 가 포함 되 어 있 습 니 다.
항목 마다 여러 목표 포함 – target //각각 target 은 하나의 큰 임무 입 니 다.
목 표 는 다른 목표 에 의존한다 – depends //큰 임 무 는 다른 큰 임무 에 의존 할 수 있 고 이해 에 도움 이 된다. extends 도 비슷 한 의존 관계 가 있다.
대상 포함 작업 – javac, java, jar, war, copy, mkdir, delete, sql... / 작은 작업
임무 로 모든 일 을 완성 하 다.
첫 번 째 예시:
Ok
모든 빌 드 파일 에는 요소 가 있어 야 하고 최소한 하나의 요소 가 있어 야 합 니 다.
요소 의 default 속성 에 기본 값 이 없습니다.
빌 드 파일 이 꼭 build. xml 로 명명 되 어야 하 는 것 은 아 닙 니 다.하지만 build. xml 는 Ant 가 검색 할 기본 파일 이름 입 니 다.
빌 드 파일 마다 하나의 요소 만 있 을 수 있 습 니 다.
Ant 퀘 스 트 (task)
하나의 task 는 실행 가능 한 코드 입 니 다.
하나의 task 는 여러 개의 속성 을 가 질 수 있 습 니 다.속성 은 property 에 대한 참조 만 포함 할 수 있 습 니 다.이 인용 들 은 task 가 실행 되 기 전에 해 석 됩 니 다.
다음은 Task 의 일반적인 구조 형식 입 니 다.
•
• 여기 taskname 은 task 의 이름 이 고 attributeN 은 속성 명 이 며 value N 은 속성 값 입 니 다.
내 장 된 (built - in) task 와 선택 가능 한 task 가 있 지만, 자신의 task 를 작성 할 수도 있 습 니 다.
모든 task 에는 task 이름 속성 이 있 습 니 다.Ant 는 로그 정 보 를 속성 값 으로 생 성 합 니 다.
Ant 핵심 퀘 스 트 의 copy
1. :
2.
3.
4.
5. , 。Bak
6. , @ @
Ant 핵심 퀘 스 트 delete
파일 이나 디 렉 터 리 를 삭제 합 니 다. 예:
1.
2.
3.
4. ,
Ant 핵심 퀘 스 트 이동
Move: ( ) 、 , :
1.
2.
3.
4.
5. 。Bak
Ant 핵심 javac
자바 원본 코드 컴 파일, 예
1.
{src} 。Java 。Class {build} ,classpath ,debug on debug
2.
{src} {src2} 。Java , package/p1/**,mypackage/p2/** , mypackage/p1/testpackage/** 。Class {build} ,classpath ,debug on debug
3.
property
Ant 핵심 퀘 스 트 의 자바
java java , :
1.
classname ,classpath
2.
Ant 핵심 퀘 스 트 의 jar
jar 파일 을 압축 합 니 다. 예:
1.
{build}/classes {dist}/lib/app.jar
2.
{build}/classes {dist}/lib/app.jar , mypackage/test/ Test.class
3.
manifest META-INF/MANIFEST.MF ,
Ant 핵심 임무 의 war
Jar , Web , :
:
thirdparty/libs/jdbc1.jar
thirdparty/libs/jdbc2.jar
build/main/com/myco/myapp/Servlet.class
src/metadata/myapp.xml
src/html/myapp/index.html
src/jsp/myapp/front.jsp
src/graphics/images/gifs/small/logo.gif
src/graphics/images/gifs/large/logo.gif
:
:
WEB-INF/web.xml
WEB-INF/lib/jdbc2.jar
WEB-INF/classes/com/myco/myapp/Servlet.class
META-INF/MANIFEST.MF
index.html
front.jsp
images/small/logo.gif
images/large/logo.gif
bulid.xml
Ok
target......