`
jinghuainfo
  • 浏览: 1524217 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

测试phoneme advance(DirectFB)运行环境

 
阅读更多
<meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"> <meta content="OpenOffice.org 2.2 (Unix)" name="GENERATOR"> <meta content="root" name="AUTHOR"> <meta content="20070927;20383800" name="CREATED"> <meta content="16010101;0" name="CHANGED"> <style type="text/css"> <!-- @page { size: 21cm 29.7cm; margin: 2cm } P { margin-bottom: 0.21cm } PRE { font-family: "文鼎PL细上海宋Uni", monospace } TD P { margin-bottom: 0cm } --> </style>

测试phoneme advance(DirectFB)运行环境

转载时请注明出处和作者联系方式
作者联系方式:李先静 <xianjimli at hotmail dot com>

在上文中,我们顺利完成了phoneme advance的编译,我对phoneme了解不多,怎么验证JVM否工作正常呢?对于JAVA程序员来说,这只是小事一桩,呵,对我来说,却是高深得不得了。花了好长时间才折腾出来,这里做点笔记,供下一个JAVA盲参考。

  1. 先设置环境变量

    export PREFIX=/usr/local

    export JDK_DIR=/usr/share/j2sdk1.4.2_15

    export PATH=$JDK_DIR/bin:$PREFIX/java/cdc/bin:$PREFIX/java/cdc/midp/midp_linux_fb_gcc/bin/i386 :$PATH


  1. 测试CVM

  • 先写个最简单的HelloWorld程序,文件名为HelloWorld.java


classHelloWorld
{
publicstaticvoidmain(Stringargv[])
...{
System.out.println(
"HelloWorld");
}

}
;...
  • 再写个Makefile

JFLAGS=-bootclasspath$(PREFIX)/java/cdc/btclasses:$(PREFIX)/java/cdc/midp/midp_linux_fb_gcc/classes

.SUFFIXES:.class.java
.java.class:
javac$(JFLAGS)$
<

all
:HelloWorld.class

clean
:
rm
-f*.class*.jar

这里要设置好bootclasspath,让它能连接phonemeclass

  • 编译

make

  • 运行

cvm HelloWorld

(顺利的话,会打印出HelloWorld)

  1. 测试MIDlet

  • 先写个最简单的HelloWorld程序,文件名为HelloWorld.java

importjavax.microedition.midlet.MIDlet;
importjavax.microedition.lcdui.Command;
importjavax.microedition.lcdui.CommandListener;
importjavax.microedition.lcdui.Display;
importjavax.microedition.lcdui.Displayable;
importjavax.microedition.lcdui.Form;

publicclassHelloWorldextendsMIDletimplementsCommandListener
...{
privateFormform;

publicHelloWorld()
...{
form
=newForm("TestApp");
form.append(
"HelloWorld!");
form.addCommand(
newCommand("Exit",Command.EXIT,1));
form.setCommandListener(
this);
}


publicvoidstartApp()
...{
Displaydisplay
=Display.getDisplay(this);
display.setCurrent(form);
}


publicvoidpauseApp()
...{
}


publicvoiddestroyApp(booleanunconditional)
...{
form
=null;
}


publicvoidcommandAction(Commandc,Displayabled)
...{
destroyApp(
true);
notifyDestroyed();
}

}
  • 再写个META-INF/MANIFEST.MF

Manifest-Version:1.0
MIDlet
-Name:HelloWorld
MIDlet
-1:HelloWorld,/icon.png,HelloWorld
MIDlet
-Version:1.0
MIDlet
-Vendor:LiXianJing
MIDlet
-Icon:/icon.png
MicroEdition
-Profile:MIDP-1.0
MicroEdition
-Configuration:CLDC-1.0
  • 再写个Makefile

    JFLAGS=-bootclasspath$(PREFIX)/java/midp/classes:$(PREFIX)/java/cdc/btclasses

    .SUFFIXES:.
    class.java
    .java.
    class:
    javac$(JFLAGS)$
    <

    all:HelloWorld.
    class
    zipHelloWorld.jarHelloWorld.
    classMETA-INF/MANIFEST.MF

    clean:
    rm
    -f*.class*.jar

  • 修改DirectFB的配置/etc/directfbrc

    system=sdl

    mode=240x320

  • 安装midlet

    installMidlet file:////root/work/java/test/midlet/HelloWorld.jar

    (好像只有绝对路径才可以)

    安装之后,屏幕上会打印出该midletID,在运行和卸载时需要它。

  • 运行midlet

runMidlet 2 HelloWorld

(这里的2就是前面安装的ID,正常的话会有图形窗口出来)

  • 卸载midlet

removeMidlet 2

窗口的宽度和高度可以修改相应的constants.xml文件,在编译时该文件用来产生头文件 midp_constants_data.h

~~end~~

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics