BlackBerry Development on Mac OS X BlackBerry 개발

자료 출처 : http://www.azizuysal.com/2009/07/blackberry-development-on-mac-os-x.html


0. 개요

블랙베리 개발환경은 이클립스 기반에 플러그인 형태로 제공이 되는데, 이 플러그인이 윈도우즈 환경에서만
동작하도록 되어 있다. 따라서 Mac이나 Linux에서는 설치조차 되지 않는다.

하지만 이클립스 플러그인은 수동으로도 설치할 수 있기 때문에 Mac이나 Linux에서도 비교적 쉽게 개발환경을 세팅할 수 있다.
심지어
자동화 툴(bb-ant_tools)을 사용한다면 컴파일부터 배포까지 모든 과정을 자동으로 수행할 수도 있다.


1. 준비물

1-1. JDK 1.5이상(블랙베리 JDE 5.0이상에서는 JDK 1.6이상을 요구) - Mac에 기본적으로 설치되어 있다.
1-2. 이클립스 3.5이상 - 다운로드
1-3.
블랙베리 JDE plugin(4.7 또는 5.0) - 다운로드
1-4. bb-ant-tools - 다운로드
1-5. preverify binary file for Mac OS X - 다운로드


2. 설치

2-1. 이클립스 설치

다운로드 받은 이클립스 zip 파일을 압축을 해제한 후 /Applications 폴더 안으로 이동시킨다.

  2-1-1. 폴더 만들기

이클립스가 workspace로 사용할 폴더를 ~/Development/BlackBerry로 만든다.
그리고 블랙베리 이클립스 플러그인이 설치될 폴더도 만든다.
(~/Development/BlackBerry/SDK)

2-2. 블랙베리 JDE plugin 설치

다운로드 받은 BlackBerry JDE component for eclipse를 압축해제한다.
그러면 파일명과 동일한 폴더명이 생길것이고 그 안에는 features와 plugins라는 2개의 폴더가 보일것이다.

plugins 폴더안으로 이동한 후 net.rim.eide.componentpack5.0.0_5.0.0.14.jar 파일의 확장자를 .zip으로 변경한다.
그리고 변경된 zip파일을 압축해제한다.
압축해제된 폴더를 ~/Development/BlackBerry/SDK/안으로 이동시키면 블랙베리 JDE plugin설치는 끝난다.

2-3. 이클립스 실행 및 블랙베리 JDE plugin 설정

우선 workspace를 ~/Development/BlackBerry로 지정한 후 이클립스를 실행하자.
이클립스 메뉴에서 Eclipse -> Preferences 메뉴를 선택해서 창을 띄운다.

좌측 메뉴의 Java -> Build Path -> User Libraries로 이동한 후 New 버튼을 누른다.
libray name에는 "BlackBerry .50"이라고 입력하고 Next 버튼을 누른 후 Add JARs 버튼을 누르자.
~/Development/BlackBerry/SDK/net.rim.eide.componentpack5.0.0_5.0.0.14/components/lib 폴더를 찾아서
그 안에 있는 net_rim_api.jar 파일을 선택한다.

그리고, javacdoc location에는 ~/Development/BlackBerry/SDK/
net.rim.eide.componentpack5.0.0_5.0.0.14/components/docs/api 폴더를 선택한다.
(이클립스내에서 api doc 문서를 참조할 수 있다.)


2-4. bb-ant-tools 설치

다운로드 받은 bb-ant-tools 파일을 압축해제한 후 폴더를 ~/Development/BlackBerry/SDK 폴더안으로 이동시킨다.
그 다음 이클립스를 실행시킨 후 다시 Eclipse -> Preferences를 열어서 좌측 Ant -> Runtime으로 들어간 후 Add External JARs를 선택하고 bb-ant-tools.jar 파일을 찾아서 Ok 버튼을 누른다.

또한 블랙베리 JDE 툴안에 있는 preverify.exe 파일에 대응되는 Mac OS X 버전용 바이너리 파일이 필요하다. 이 파일은 1-5에서 다운로드 받은 파일을 압축해제 하면 나온다. 이 preverify 파일을
~/Development/BlackBerry/SDK/net.rim.eide.componentpack5.0.0_5.0.0.14/components/bin 폴더안으로 이동시키면 된다.


2-5. path 설정하기

이제 마지막으로 ~/.bash_profile 파일의 path에 ~/Development/BlackBerry/SDK/net.rim.eide.componentpack5.0.0_5.0.0.14/components/bin 경로를 추가해 줌으로써 path 설정을 마친다.

export PATH=${PATH}:/Users/jin32/
Development/BlackBerry/SDK/net.rim.eide.componentpack5.0.0_5.0.0.14/components/bin


3. 블랙베리 어플 빌드하기


이클립스를 다시 실행해서 새 프로젝트를 생성한다.
(File -> New -> Java Project를 선택한다.)
프로젝트명에는 "HelloWorld"라고 입력하고 다른 체크박스는 선택하지 않고 Next 버튼을 누른다.

Libraris 탭을 누른 후 "JRE system library"를 선택하고 Remove 버튼을 누른다.
그리고 Add Library 버튼을 눌러서 User Library를 선택하고 Next, "BlackBerry 5.0"을 체크한 후 Finish 버튼을 누름으로써 하나의 프로젝트가 생성되었다.

3-1. 코드작성

새로운 package를 생성하고 이름은 "com.jin32.sample.helloworld"라고 입력한다.
그리고 새 class를 생성하고 클래스명을 HelloWorld라고 한다. 소스코드는 아래와 같이 입력한다.

package com.jin32.sample.helloworld;
 
import net.rim.device.api.ui.UiApplication;
import net.rim.device.api.ui.component.LabelField;
import net.rim.device.api.ui.container.MainScreen;
 
public class HelloWorldApp extends UiApplication {
public HelloWorldApp() {
MainScreen screen = new MainScreen();
screen.add(new LabelField("Hello, World!"));
pushScreen(screen);
}
 
public static void main(String[] args) {
new HelloWorldApp().enterEventDispatcher();
}
}
이제 bb-ant-tools 사용을 위한 build.xml파일을 작성하자.
메뉴상의 File -> New -> Other로 가서 xml을 선택한 뒤 파일명에는 build.xml이라고 입력한다.

그리고 다음 내용을 입력하고 저장한다.
<project name="Hello World App" default="build">
<taskdef resource="bb-ant-defs.xml" />
 
<!-- rapc and sigtool require the jde.home property to be set -->
<property name="jde.home" location="/Users/jin32/Development/BlackBerry/SDK/net.rim.eide.componentpack5.0.0_5.0.0.14/components" />
 
<!-- directory of simulator to copy files to -->
<property name="simulator.home" location="/Users/jin32/Development/BlackBerry/SDK/net.rim.eide.componentpack5.0.0_5.0.0.14
/components/simulator" />
<property name="src.dir" location="src" />
<property name="build.dir" location="build" />
<property name="cod.name" value="com_jin32_HelloWorld" />
 
<target name="build">
<mkdir dir="${build.dir}" />
<rapc output="${cod.name}" srcdir="${src.dir}" destdir="${build.dir}">
<jdp title="Hello World" />
</rapc>
</target>
 
<target name="sign">
<sigtool codfile="${build.dir}/${cod.name}.cod" />
</target>
 
<target name="clean">
<delete dir="${build.dir}" />
</target>
 
<target name="load-simulator" depends="build">
<copy todir="${simulator.home}">
<fileset dir="${build.dir}" includes="*.cod,*.cso,*.debug,*.jad,*.jar" />
</copy>
<exec executable="/bin/sh">
<arg value="-c" />
<arg value="${simulator.home}/9000.sh" />
</exec>
</target>
</project>
메뉴의 Window -> Show View -> Ant를 선택하면 ant view가 활성화된다.
여기에다가 조금전에 작성한 build.xml 파일을 드래해서 놓는다.

이 빌드 스크립트(build.xml)를 더블-클릭해서 이클립스내의 Console Window에 SUCCESSFULL이라는 메시지가 나오면 성공적으로 수행된 것이다.


다음 포스트에서는 Mac에서 시뮬레이터를 실행시키기 위해 wine의  설치법과 빌드된 어플을 시뮬레이터로 실행시키는 방법에 대해서 알아보도록 하자.