先安裝netbeans的 j2me開發插件
之後添加 "JAVA平台管理" -> J2ME -> 定制J2ME平台 仿真器 (翻譯過來就這個含義) 之後添加 BB模拟器的路徑
然後填寫一些基本資訊(略過)
下一步之後,移除除開net_rim_api.jar的所有jar包(隻保留net_rim_api.jar一個)
然後建立J2ME項目
修改預設的build.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- You may freely edit this file. See commented blocks below for -->
<!-- some examples of how to customize the build. -->
<!-- (If you delete it and reopen the project it will be recreated.) -->
<project name="BlackberryZWhereCallMe" default="jar" basedir=".">
<description>Builds, tests, and runs the project .</description>
<import file="nbproject/build-impl.xml"/>
<!-- 定義任務文法 -->
<typedef resource="bb-ant-defs.xml" classpath="E:/bb-ant-tools.jar" />
<property name="rim.blackberry.home" location="C:/Program Files/Research In Motion/BlackBerry JDE 4.5.0"/>
<property name="rim.blackberry.emulator" value="8700-black"/>
<property name="rim.blackberry.jdwp.port" value="8001"/>
<!-- cod檔案生成目錄 -->
<property name="dist" value="E:/codeproject/BlackberryZWhereCallMe/dist/snk"/>
<target name="bbbuild" description="blackberry build" depends="init">
<mkdir dir="${dist}" />
<rapc quiet="false" output="${name}"
jdehome="${rim.blackberry.home}"
destdir="${dist}"
srcdir="E:/codeproject/BlackberryZWhereCallMe/src">
<jdp
title="zWhereCallMe" vendor="zhangjianying" version="0.1" description="Is CopyRight by zjy"
systemmodule="true"
runonstartup="true" startuptier="7" type="library" />
</rapc>
</target>
<target name="post-jar">
<antcall target="bbbuild" />
<!--
<exec os="Windows NT Windows 95 Windows 98 Windows 2000 Windows XP"
dir="${dist.root.dir}"
executable="${rim.blackberry.home}/bin/rapc.exe"
failonerror="true" resolveExecutable="true">
<arg value="import=${rim.blackberry.home}/lib/net_rim_api.jar"/>
<arg value="codename=${name}"/>
<arg value="-midlet"/>
<arg value="library=BlackberryZWhereCallMe"/>
<arg value="BlackberryZWhereCallMe.rapc warnkey=0x52424200;0x52525400"/>
<arg value="jad=${dist.jad}"/>
<arg value="${dist.jar}"/>
</exec>
-->
<echo description="">${jde.home}/lib/net_rim_api.jar</echo>
<rapc output="BlackberryZWhereCallMe"
jdkhome="E:/資料/JDK_IBM"
quiet="false"
srcdir="E:/codeproject/BlackberryZWhereCallMe/src"
import="${jde.home}/lib/net_rim_api.jar"
jdehome="${jde.home}" >
<jdp title="Kick Ass App" vendor="Slashdev" version="1.0" type="library" />
<!-- <copy file="${name}.alx" todir="${dist.root.dir}"/> -->
<target name="run" depends="init,jar">
<echo message="dddd=== ${dist.root.dir}"/>
<copy todir="${rim.blackberry.home}/simulator" verbose="true">
<fileset dir="${dist.root.dir}/snk">
<include name="**/${name}.*"/>
</fileset>
</copy>
dir="${rim.blackberry.home}/simulator"
executable="${rim.blackberry.home}/simulator/${rim.blackberry.emulator}.bat"
failonerror="true" resolveExecutable="true"/>
<target name="debug" depends="init,jar">
<fileset dir="${dist.root.dir}">
<delete file="${preprocessed.dir}/.timestamp"/>
<parallel>
<property name="jpda.port" value="${rim.blackberry.jdwp.port}"/>
<java jar="${rim.blackberry.home}/bin/JDWP.jar" fork="true" dir="${rim.blackberry.home}/bin">
<jvmarg value="-Xmx256M"/>
</java>
<sequential>
<sleep seconds="5"/>
<antcall target="nbdebug"/>
</sequential>
</parallel>
<target name="init.rim.blackberry" depends="init">
<condition property="rim.blackberry" value="true">
<or>
<equals arg1="Test" arg2="${config.active}"/>
</or>
</condition>
<target name="post-clean">
<echo>Post clean</echo>
<delete>
<fileset dir="${rim.blackberry.home}/simulator">
</delete>
</project>
注意事項 :
1 如果編譯過程中出現 不能建立JVM的提示
到netbeans/etc目錄下修改相應的netbeans的啟動參數(如果你做了優化就容易引起這個問題)
另一個辦法就是下載下傳bb-ant-tools.jar的源碼,修改一段代碼:
将 ca.slashdev.bb.tasks.RapcTask
中的 executeRapc()方法下的
List<String> jvmArgs = ManagementFactory.getRuntimeMXBean().getInputArguments();
for (String arg : jvmArgs) {
if (arg.startsWith("-X"))
java.createJvmarg().setValue(arg);
}
這段代碼注釋掉.
2 出現不支援的字元集警告時,
在netbeans中點工程的屬性,将工程的字元集設定成警告中提醒的(如GBK)
3 不要使用預設dist檔案目錄作為輸出目錄,展不清楚為什麼,使用預設預設目錄的時候,會将源碼一起編譯到cod檔案中 (檢視方法用記事本直接打開編譯後的cod會發現源碼也打進去了)
是以可以在 dist後加一個子目錄,比如 snk ,或者 4.5 ,5.0 等