首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> J2ME

J2ME Polish + Eclipse (Mepose) 整合環境建置完整實戰筆記

     編輯:J2ME

版本相容性關鍵提示

經實測,**Eclipse 3.5.1 + Polish 2.1.3** 整合失敗 (Preferences 無 J2ME Polish 選單)。改用以下穩定組合:

  • Eclipse SDK 3.4.1 (Ganymede)
  • J2ME Polish 2.0.1
  • Mepose 外掛 (Polish 內建更新站點)

安裝流程詳細步驟

1. Eclipse SDK 3.4.1 安裝

  • 下載 eclipse-SDK-3.4.1-win32.zip
  • 解壓至 D:\Program Files\eclipse
  • 啟動指定工作區 D:\workspace

2. J2ME Polish 2.0.1 安裝 (關鍵路徑設定)

  1. 執行安裝程式,安裝路徑:D:\Program Files\J2ME-Polish2.0.1
  2. 關鍵步驟:安裝嚮導中依序設定:
    • WTK 路徑 (如 C:\WTK2.5.2)
    • 廠商模擬器路徑 (Nokia SDK, Sony Ericsson SDK 等)
    • Eclipse 安裝路徑 (D:\Program Files\eclipse)
  3. 勾選 Eclipse Integration (Mepose) 完成安裝

3. Mepose 外掛安裝 (線上更新)

  1. Eclipse:Help → Software Updates → Available Software → Add Site
  2. Location: https://www.j2mepolish.org/mepose
  3. 勾選 EclipseME (Mepose 旧稱) → Install → 重啟 Eclipse
  4. 驗證:Window → Preferences 應出現 J2ME Polish 選單

建立第一個 Polish 專案

專案精靈設定

  1. File → New → Other → J2ME Polish Project
  2. 專案名:HelloPolish
  3. 務必勾選 Generate template (否則後續建立類別會出錯)
  4. Class name: PolishHello,Package: com.polish.learning
  5. 指定 Polish、WTK、模擬器路徑 (可後續在 build.xml 調整)
  6. Configurations: CLDC/1.1,Platforms: MIDP/2.0,Devices: Virtual → Generic/DefaultColorPhone
  7. Finish

自動產生的專案結構

HelloPolish/
├── build.xml           # Ant 建構腳本 (核心)
├── build/              # 輸出目錄
├── resources/          # 共用資源 (含 polish.css)
├── src/
│   └── com/polish/learning/
│       └── PolishHello.java
└── devices.xml         # 裝置定義 (可選)

PolishHello.java 實作範例

package com.polish.learning;

import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.StringItem;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import de.enough.polish.util.Locale;

public class PolishHello extends MIDlet {
    private Form myScreen;
    private Display display;

    protected void startApp() throws MIDletStateChangeException {
        this.myScreen = new Form(null);
        // #style stringItem
        StringItem helloPolishItem = new StringItem(null, "Hello Polish!");
        this.myScreen.append(helloPolishItem);
        this.display = Display.getDisplay(this);
        this.display.setCurrent(this.myScreen);
    }

    protected void pauseApp() {}
    protected void destroyApp(boolean unconditional) throws MIDletStateChangeException {}
}

關鍵語法:// #style stringItem 是預處理指令,建構時會依 CSS 套用樣式至該元件。

resources/polish.css 定義樣式

.stringItem {
    margin-top: 2;
    padding: 2;
    padding-left: 5;
    font {
        color: black;
        size: medium;
        style: bold;
    }
    layout: left;
}

build.xml 關鍵修正:修正 JAD 屬性產生

預設 build.xml 的 <jad> 區塊缺少 MIDlet-1 屬性,導致模擬器無法啟動。請在 <jad> 內加入:

<jad>
    <attribute name="Nokia-MIDlet-Category" value="Game" if="polish.group.Series40"/>
    <!-- 新增以下一行 -->
    <attribute name="MIDlet-1" value="HelloPolish,,com.polish.learning.PolishHello"/>
</jad>

格式說明:value="MIDlet名稱,圖示路徑(可空),完整類別名",圖示路徑為空時保留兩個逗號 ,,,不可省略。

執行與常見錯誤排除

執行方式

右鍵 PolishHello.java → Run As → J2ME Polish MIDlet

錯誤 1:com.sun.tools.javac.Main is not on the classpath

原因:JAVA_HOME 指向 JRE 而非 JDK。

快速修復:將 JDK lib/tools.jar 複製至 JRE lib/ 目錄:

copy "C:\Program Files\Java\jdk1.6.0_11\lib\tools.jar" "C:\Program Files\Java\jre6\lib\"

重啟 Eclipse 即可。

錯誤 2:NullPointerException 或 MIDlet 無法載入

原因:MIDlet-1 屬性值格式錯誤 (逗號數量不符)。

正確格式:

value="HelloPolish,,com.polish.learning.PolishHello"
  • 第 1 欄:MIDlet 顯示名稱
  • 第 2 欄:圖示 (空白)
  • 第 3 欄:主類別完整名稱 (不含 .java)
  • **兩個逗號分隔三欄位,缺一不可**

後續進階設定方向

  • 編輯 devices.xml 匯入真實裝置規格
  • 設定 build.xml 的 <obfuscate> 整合 ProGuard
  • 建立多主題 CSS 實現換膚功能
  • 配置 <locale> 實現多語系建構

完成上述設定,您即擁有整合 Eclipse IDE 的 J2ME Polish 開發環境,可高效進行多裝置、多語系的 J2ME 應用開發。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved