Study/Actionscript 3.02011. 4. 11. 20:52
http://fwangmeong.com/136




[첨부파일] :  


ant 를 통한 build 자동화 구축기 이다.

구축환경은 Flash Builder4 Burrito 이며 , 아마 Flash Builder 4 에서도 되지 싶다. ( Ant적용은 FB4 부터 되지 않았나 기억하기에.. )
지돌스타님의 포스팅을 기본으로 삽질을 했다. ( 참고 URL : http://blog.jidolstar.com/505 )
[ Action Script Project 를 생성한다.]

[ 첨부된 파일의 src 폴더와 build 폴더를 해당 프로젝트에 복사한다. ]
 

[ 첨부된 모습이다. ]

[ 간단하게 네모를 만든 소스. 컴파일 될 테스트 소스이다.]

[build] 폴더에 build.properties 파일을 연다.

[ 포커싱된 영역이 ftp 업로드될 설정 부분이다. 해당 부분에 ftp 접속 정보와 업로드될 path를 설정한다. ]


이제 가장 포인트가 될. ftp 업로드를 하기 위한 라이브러리를 등록한다.
[메뉴] - [Window] - [preferences] - [Ant] - [Runtime] 
에서 Classpath 탭매뉴에 Ant Home Entries 부분에 jar 파일을 등록한다. 
[ window - preferences 클릭 ]

[ 파일 첨부한 build 폴더에 libs 폴더에 commons-net-1.4.1.jar 파일을 라이브러리로 등록한다. FTP 업로드를 위한 라이브러리로 이해하면 되겠다.]

Ant를 편히 사용하기 위해  패널을 연다.
[ window - Show View - Other 클릭 ]

[ Ant 폴더에 Ant 패널 클릭 ]

Ant 패널에서 Ant를 통해 build 할 설정 파일을 불러온다.

[ Ant 패널에서 우클릭후 Add Buildfiles 클릭 ]


build.infomation.xml 파일은 지돌스타님 블로그에서 가져온 build.xml 파일이며 여러가지 설정이 담겨있다.
간단히 최소화 하여 , 컴파일 & ftp upload 만 남겨둔 파일이 build.xml 파일이다.
build.information.xml 파일은 참고만 하고 , build.xml 파일을 가지고 컴파일 및 업로드를 한다. 

[ build.xml 파일을 클릭하여 등록한다. ] 

[ 등록되어 올라온 모습 ]


현재 상태에서는 지돌스타님이 제공해 주신 샘플 파일이 그대로 적용되어진 상태이다.
즉 , 프로젝트가 생성되면서 생겨진 defulat 소스인 Main.as 파일은 적용이 안되고 , 파일을 첨부한 src 폴더안의 소스들만 적용 되어진 상태이다.
이제 Main.as 파일을 적용해보자.

build.xml 파일을 연다.


그림안의 설명을 보면 알수 있듯이 , 

<target name="compile all" depends="compile MyWidgets, compile widget1, compile widget2, compile widget3"/>
을 실행하면 depends 에 걸려 있는(?) 실행 커멘드 들이 같이 일괄적으로 실행된다.

2.번과 같이 아래와 같이 적용하여 XML 노드를 추가한후
<target name="compile MyApp" depends="mkdir bin">
     <mxmlc file="${src.dir}/Main.as" output="${bin.dir}/Main.swf" />
</target>


compile all 부분에  위 compile MyApp 을 추가하여 준다.
<target name="compile all" depends="compile MyWidgets, compile widget1, compile widget2, compile widget3, compile MyApp"/> 

ftp 부분의 노드는 build.properties 파일에 설정한 값을 토대로 업로드를 하는 일을 하므로 건드리지 않는다.

자. 이제 다 끝났다.
기존 첨부파일은 MyWidgets .as , Widgets1.as , Widgets2.as , Widgets3.as 파일을 가지고 각각 컴파일을 하여 bin 폴더에 해당 파일명.swf 파일로 컴파일이 된다.

여기서는 , 직접 우리가 컴파일 하고자 하는 Main.as 파일노드도 추가하고 , 전부 컴파일 되는 커멘드 노드부분에 해당 Main.as 파일 컴파일도 되도록 설정해 주었다.

ftp 업로드 부분에는 해당 폴더의 모든 *.swf 파일을 다 업로드 하므로 같이 업로드 된다.

Ant 를 실행하여 bin 폴더 안에 .swf 파일이 컴파일된 모습과 ftp 에 업로드 된 모습을 확인해 보겠다.

 

[ FTP 설정한 노드를 확인해 보면 알겠지만 , 전부 컴파일 한후 ftp에 업로드 한다. ]


[ Ant 실행전 폴더모습 ]

[ Ant 실행후 업로드 된 모습 ]

[ Ant 실행. Console 창을 보면 알수 있겠지만 5번의 컴파일과 ftp로 5 files sent 라는 문구를 확인할수 있다. 우측에 bin 폴더에 컴파일 되어진 모습도 볼수 있다.] 



Ant로  더 유용한 무언가를 할수 있는지는 추후 사용해 보면서 차차 업데이트 해 나가야 겠다.
우선적으로 여러 파일의 swf 산출물이 연결된 프로젝트에 웹 프로젝트로써 서버에 업로드를 해 주어야 하는 일괄적인 작업들을 Ant 란 놈으로 번거로움을 덜어 줄수 있도록 간단히 구축해 보았다.

끝.

 

 
Posted by chacolina