Jcreater+MotoJ2SDK的配置与使用心得

发表于:2007-06-22来源:作者:点击数: 标签:
假设安装路径如下: JCreator D:\Program Files\Xinox Software\JCreator LE motoj2sdk D:\Motoj2sdk JDK D:\jdk1.3.1 注意:要先击活模拟环境,运行D:\MotoJ2SDK\generic\scripts\runConstructor.bat 选择手机型号,选择语言,选择normal, 再"创建"。 启动

   


   假设安装路径如下:

     JCreator D:\Program Files\Xinox Software\JCreator LE

   motoj2sdk D:\Motoj2sdk

   JDK D:\jdk1.3.1

   注意:要先击活模拟环境,运行D:\MotoJ2SDK\generic\scripts\runConstructor.bat

   选择手机型号,选择语言,选择normal, 再"创建"。

   启动Jcreater之后我的配置如下:

   第一步

   选择 Configure->Options->JDK Profiles

   注意:一定新建 profile and select “D:\jdk1.3.1”

   将名字改为“J2ME 388”

   Add classes path “D:\Motoj2sdk\lib”

   Add documentation path “D:\Motoj2sdk\docs”

   分别将后加的两行移到最上方.

   第二步

   选择 Configure->Options->JDK Tools

   选择Complier 选中 and edit it.

   将 parameters 变为 -classpath D:/motoj2sdk/lib $[JavaFiles]
   第三步

   选择 Configure->Options->Tools

   点击“New”选择 DOS command

   名字为“Preverifier”

   将 arguments 换为 d:\Motoj2sdk\bin\preverifier.exe -classpath "d:\Motoj2sdk\lib" -d . .

   将 initial directory 变为 “$[PrjDir]”

   第4步

   按上面的方法在New一个 DOS command

   名字:“Run Emulator”

   将 arguments 换成 “java -Djava.library.path=d:/MotoJ2SDK/lib -classpath "d:/MotoJ2SDK/bin/Emulator.jar";"d:/MotoJ2SDK/ConfigTool.jar" com.mot.tools.j2me.emulator.Emulator -classpath$[PrjDir];"d:/MotoJ2SDK/lib" -deviceFile d:/MotoJ2SDK/bin/resources/device.props javax.microedition.midlet.AppManager $[CurClass] -JSA 1 1”

   将 initial directory 换成 “d:\Motoj2sdk\bin”

   ok!编辑工具配置完毕!

   新建一个工程——选择Empty Project

   再取一个名字 比如:test

   则jcreater自动在你的工作目录中生成目录test

   再new一个file选择java File

   写好你的原代码,保存 如:test.java

   在Project中 选add file

   然后选中你刚才的test.java

   注意:不要有package ;

   编译——》tools中的Preverifier进行预先审核——》tools中的Run Emulator进行模拟

   test.java 的例子:功能是捕捉键盘输入的ascII吗。

   import javax.microedition.lcdui.*;

   import javax.microedition.midlet.*;

   public class test extends MIDlet implements CommandListener {;

   /**

   * The screen for this MIDlet

   */
   private KeyEventsDemoCanvas myCanvas;

   /**

   * Reference to current Display

   */

   private Display myDisplay;

   /**

   * Command to make sure soft key is not a key event

   */

   private Command okCommand = new Command("OK", Command.OK, 1);

   test() {;

   myDisplay = Display.getDisplay(this);

   myCanvas = new KeyEventsDemoCanvas();

   myCanvas.addCommand(okCommand);

   myCanvas.setCommandListener(this);

   };
/**

   * Do nothing if a command is fired
   */

   public void commandAction(Command c, Displayable s) {;

   };

   /**

   * Start the MIDlet

   */

   protected void startApp() throws MIDletStateChangeException {;

   myDisplay.setCurrent(myCanvas);

   };

   /**

   * Pause the MIDlet

   */

   protected void pauseApp() {;

   };

   /**

   * Called by the framework before the application is unloaded

   */
   protected void destroyApp(boolean unconditional) {;

   };

   /**

   * The screen for this application

   */

   class KeyEventsDemoCanvas extends Canvas {;

   /**

   * Background color (i.e. the color of the screen)

   */

   public final int BACKGROUND_COLOR = 0xFFFFFF; // white

   /**

   * Foreground color (i.e. the color of the rectangles)

   */

   public final int FOREGROUND_COLOR = 0x000000; // black

   /**

   * Last key that was pressed
   */

   private int lastKey;

   /**

   * Paint the screen

   */

   public void paint(Graphics g) {;

   /*

   * Clear the screen

   */

   g.setColor(BACKGROUND_COLOR);

   g.fillRect(0, 0, getWidth(), getHeight());

   /*

   * Paint the message

   */

   g.setColor(FOREGROUND_COLOR);

   g.drawString("Press a key!", 0, 0, Graphics.TOP | Graphics.LEFT);

   if (lastKey != 0) {;

   g.drawString("Key Code: " + lastKey, 0, g.getFont().getHeight(),

   Graphics.TOP | Graphics.LEFT);

   try {;

   g.drawString("Action: " + getGameAction(lastKey), 0,

   2 * g.getFont().getHeight(),

   Graphics.TOP | Graphics.LEFT);

   g.drawString("Key Name: " + getKeyName(lastKey), 0,

   3 * g.getFont().getHeight(),

   Graphics.TOP | Graphics.LEFT);

   }; catch (Exception e) {;

   // ignore since alphabet keys will throw this exception

   };

   };

   };
   /**

   * Handle key press

   */

   public void keyPressed(int keyCode) {;

   lastKey = keyCode;

   repaint();

   };

   /**

   * Demonstrate keyRepeated events

   */

   public void keyRepeated(int keyCode) {;

   System.out.println("Key repeated " + keyCode);

   };

   };

   };
(中国JAVA手机网)

原文转自:http://www.ltesting.net