[Flex] Flex Builder에서 나만의 manifest 만들기
[공지]이미지나 링크가 깨졌다면 댓글 부탁드립니다.
Flex에서 Flex Library Project로 SWC를 만들게 된다.이때, 제작된 Class들은 각자의 namespace안에 들어가 있으므로 Flex Project에서 아래와 같이 사용해야할 것이다.
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:map="com.starpl.map.*"
xmlns:minimap="com.starpl.map.minimap.*"
xmlns:controller="com.starpl.map.controller.*"
layout="absolute">
<map:Map/>
<minimap:MiniMap/>
<controller:ZoomControl/>
</mx:Application>
위 코드에서 볼 수 있듯이 Map, MiniMap, ZoomControl 컴포넌트들은 각각 다른 namespace(각각 map,minimap,controller)를 가지게 되기 때문에 사용하기 번거롭다.
<?xml version="1.0" encoding="utf-8"?>
<mx:Application
xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:map="http://www.starpl.com/2008/mxml"
layout="absolute">
<map:Map/>
<map:MiniMap/>
<map:ZoomControl/>
</mx:Application>
위 코드처럼 Flex SDK에서 제공하는 컴포넌트에서 mx를 사용하듯이 namespace인 map으로 사용하고 싶다면 다음과 같은 과정을 따라서 SWC를 만들면 되겠다.
1. 컴포넌트 제작
Flex Library Project를 만들고 위에서 src폴더에 com.starpl.map.Map, com.starpl.map.minimap.MiniMap, com.starpl.map.controller.ZoomControl 을 만든다.2. manifest 목록 작성
src폴더에 manifest XML 파일을 작성한다. 나는 starplmap-manifest.xml 이름으로 다음과 같이 작성했다.<?xml version="1.0"?>
<componentPackage>
<component id="Map" class="com.starpl.map.Map"/>
<component id="MiniMap" class="com.starpl.map.minimap.MiniMap"/>
<component id="ZoomControl" class="com.starpl.map.controller.ZoomControl"/>
</componentPackage>
3. Project에 작성한 manifest를 컴파일 옵션에 추가
메뉴에서 Project > Properties 를 선택하고 창 왼쪽 메뉴의 Flex Library Complier를 선택하면 아래와 같은 화면을 볼 수 있다.아래 Namespace URL과 Manifest file을 아래와 같이 등록하고 OK 버튼을 누르면 되겠다.
위와 같이 하면 프로젝트의 .flexLibProperties 파일에 아래와 같은 태그가 자동으로 삽입된다.
<namespaceManifests>
<namespaceManifestEntry manifest="starplmap-manifest.xml" namespace="http://www.starpl.com/2008/mxml/map"/>
</namespaceManifests>
4. SWC 배포
bin 폴더에 만들어진 swc파일을 다른 프로젝트의 Lib에 적용해서 사용하면 되겠다.관련자료
[FLEX] flex-config.xmlflex 사용자정의 manifest 만들기
글쓴이 : 지돌스타(http://blog.jidolstar.com/372)
'Adobe Flash Platform' 카테고리의 다른 글
| [Flex]UIComponent의 commitProperties()를 override할 때 주의할 점 (6) | 2008/09/24 |
|---|---|
| [Flex] ExcludeClass Metadata 태그 (8) | 2008/09/23 |
| [Flex] Flex Builder에서 나만의 manifest 만들기 (10) | 2008/09/23 |
| [Flex,PHP] Eclipse에서 Flex와 PHP로 작업하기 (7) | 2008/09/17 |
| [Flex/AIR] BlazeDS 길들이기. Flex Builder, Tomcat, Eclipse 환경에서 적응해보자. (29) | 2008/09/05 |
| [구글크롬]헉! Google 크롬이 다운되었습니다. 다시 시작하시겠습니까? (10) | 2008/09/03 |




우웃... 이 금단의 비법을 공개하시다니 ㅋㅋ
'있어보이는 라이브러리' 만들기 중 하나인 manifest 설정 ㅎㅎ
이 비법을 이미 알고있었단 말입니까?
역시 고수십니다. 꾸벅!
코드 설레발은 제 전문 분야라서 ㅎㅎ;
오홋!!! 유용하군요!
ㅎㅎㅎ 유용하죠 ^^
매번 구경만하다 감탄을하고 글을쓰게됐어요ㅋㅋ
정말 있어보이는군요..^^
항상 노력하시는 모습이 많이 힘이 되서 감사할 따름입니다.
질문이 하나 있습니다만..
Flex Library Project에서 sdk버전 Flex Gumbo 4.0.0.4021 를 설정하고
physics 라이브러리중 motor2 소스 랑 여러 소스를 합친
SWC를 만들던도중.. 이런애러가 뜨며 안되던데..
1046: 유형이 없거나 컴파일 타임 상수가 아닙니다: Vector.
문제인즉 flex sdk 3.x 또는 FP9버전대에서 없는 Vector클래스가 없어서 나오는 애러같습니다.
그렇지만 ActionScript project 에서는 문제없이 컴파일이 됬었는데 말이죠..
혹시 SWC제작할때만 나오는 이 애러의 해결방법이 있을까요?
Flash Player 버전 설정이 9 이하로 되어 있을 겁니다. 10이상으로 조정해주세요 그래야 됩니다.
mxmlc 를 사용하는 경우 -target-player=10.0.0 으로 하면 됩니다.
생성하신 프로젝트의 Project->Properties->Flex Compiler
에 Additional Compiler argument에 -target-player=10.0.0를 넣어주시고 HTML wrapper에 Flash Player vesion을 10.0.0 으로 바꿔주세요.
감사합니다... 도다른 애러가 뜨긴했는데 찾을수 잇을것 같아요.
꾸벅꾸벅^^
역시 왠만한 정보는 다 여기서 찾게 되는군요. ^^
ㅎㅎ 찾아주셔서 감사~합니다.