程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> J2ME >> 深入了解J2ME Polish+Eclipse配置過程

深入了解J2ME Polish+Eclipse配置過程

編輯:J2ME

本文和大家重點討論一下J2ME Polish+Eclipse配置過程,首先自然是Eclipse SDK的下載和安裝,這個過程就不做過多的介紹,本人的默認安裝路徑是D:\ProgramFiles。其次是J2ME-Polish-2.0.1版本的安裝,具體主要過程如下。

J2ME Polish+Eclipse配置過程詳解

到目前(2010/1/20)為止,J2ME Polish官方網站上公布的Polish最新版本是2.1.4,但是鑒於本人使用Eclipse-SDK-3.5.1-win32+J2ME-Polish-2.1.3版本配置時反復試驗均沒有成功,於是改為Eclipse-SDK-3.4.1-win32+J2ME-Polish-2.0.1版本進行配置,下面就對配置過程以及最後創建工程的整個過程做一個介紹。

首先自然是Eclipse SDK的下載和安裝,這個過程就不做過多的介紹,本人的默認安裝路徑是D:\ProgramFiles。其次是J2ME-Polish-2.0.1版本的安裝,具體主要過程如下,前面的過程就不多說了,主要對以下關鍵幾部進行說明:

1.在此選擇安裝路徑,本人的安裝路徑為D:\ProgramFiles\J2ME-Polish2.0.1文件夾,點擊next繼續

2.分別設置WTK,各個手機廠商Emulator模擬器(如Nokia),以及IDE(如Eclipse)的安裝文件路【注意:這一步的設置十分關鍵,應仔細設置好】,設置好後點擊next繼續

3.勾選Eclipse Integration(Mepose)這一項,點擊下一步進入安裝。

4.安裝完成後退出。J2ME-Polish安裝完成了,接下來就是在Eclipse中對它進行配置,這時需要一個Mepose的插件,使用Eclipse中的在線安裝即可。

步驟如下:

1.選擇菜單【Help】->【SoftwareUpdates…】,在彈出的對話框中選擇AvailableSoftware並在右側的AddSite中的Location處添加地址:http://www.J2ME Polish.org/mepose即可。

2.點擊Install進行安裝。

3.安裝完成後Eclipse會重啟。如果安裝成功在【Windows】->【Preferences】下會出現J2ME Polish菜單選項(如下圖)。如果沒能出現則說明安裝過程存在問題,在確定所有設置均正常後,可能是由於版本之間的不匹配問題。本人當初安裝時,使用的是J2ME Polish2.1.3與EclipseSDK3.5.1就出現過安裝結束後沒有出現J2ME Polish選項的問題,最後換做現在的版本則安裝一切正常。

通過以上步驟J2ME Polish的安裝以及集成在IDE環境中的工作就算完成了,接下來新建一個工程來體驗一下Polish的功能。
首先來新建一個Polish工程,【File】->【New】->【Other…】,在Java中選擇J2ME PolishProject。
鍵入工程名HelloPolish,勾選Generatetemplate?選項,並在Classname一欄輸入主類名PolishHello,Packagename一欄中輸入包名com.polish.learning,點擊next,下一步。

【注意】:此處的Generatetemplate?選項一定要勾選,不然後面建立類時會出現一些問題。

分別指定好Polish,WTK以及手機模擬器的各個路徑地址。當然,這些都可以在build.XML文件中進行再設置,這個以後會慢慢給大家介紹。點擊next,下一步。

在此,我們選擇Configurations中的CLDC/1.1,Platforms中的MIDP/2.0以及Devices中Virtual的Generic/DefaultColorPhone,關於這裡的設置,以後會慢慢給大家介紹。設置好後點擊next下一步,然後點擊Finish完成J2ME Polish工程的創建

這時候,Polish工程就創建完畢了,我們會在左側的工程區域中看到創建好的工程文件HelloPolish。

其中的com.polish.learning包以及包中的PolishHello.java文件就是我們剛才勾選Generatetemplate?選項後設置的。打開PolishHello.Java文件,我們會看到自動生成的一段代碼:

接下來,我們在PolishHello.Java文件中,輸入如下程序段:
 

  1. vIEwplaincopytoclipboardprint?  
  2. ·········10········20········30········40········50········
  3. 60········70········80········90········
  4. 100·······110·······120·······130·······140·······150  
  5.  
  6. packagecom.polish.learning;  
  7.  
  8. importJavax.microedition.lcdui.Display;  
  9. importJavax.microedition.lcdui.Form;  
  10. importJavax.microedition.lcdui.StringItem;  
  11. importJavax.microedition.midlet.MIDlet;  
  12. importJavax.microedition.midlet.MIDletStateChangeException;  
  13.  
  14. importde.enough.polish.util.Locale;  
  15.  
  16. publicclassPolishHelloextendsMIDlet{  
  17.  
  18. privateFormmyScreen;  
  19. privateDisplaydisplay;  
  20.  
  21. protectedvoidstartApp()throwsMIDletStateChangeException{  
  22. //TODO:Implementthismethod.  
  23. this.myScreen=newForm(null);  
  24. //#stylestringItem  
  25. StringItemhelloPolishItem=newStringItem(null,"HelloPolish!");  
  26. this.myScreen.append(helloPolishItem);  
  27.  
  28. this.display=Display.getDisplay(this);  
  29. this.display.setCurrent(this.myScreen);  
  30. }  
  31.  
  32. protectedvoidpauseApp(){  
  33. //TODO:Implementthismethod.  
  34. }  
  35.  
  36. protectedvoiddestroyApp(booleanunconditional)
  37. throwsMIDletStateChangeException{  
  38. //TODO:Implementthismethod.  
  39. }  
  40. }  
  41. packagecom.polish.learning;  
  42. importJavax.microedition.lcdui.Display;  
  43. importJavax.microedition.lcdui.Form;  
  44. importJavax.microedition.lcdui.StringItem;  
  45. importJavax.microedition.midlet.MIDlet;  
  46. importJavax.microedition.midlet.MIDletStateChangeException;  
  47. importde.enough.polish.util.Locale;  
  48. publicclassPolishHelloextendsMIDlet{  
  49. privateFormmyScreen;  
  50. privateDisplaydisplay;  
  51.  
  52. protectedvoidstartApp()throwsMIDletStateChangeException{  
  53. //TODO:Implementthismethod.  
  54. this.myScreen=newForm(null);  
  55. //#stylestringItem  
  56. StringItemhelloPolishItem=newStringItem(null,"HelloPolish!");  
  57. this.myScreen.append(helloPolishItem);  
  58.  
  59. this.display=Display.getDisplay(this);  
  60. this.display.setCurrent(this.myScreen);  
  61. }  
  62. protectedvoidpauseApp(){  
  63. //TODO:Implementthismethod.  
  64. }  
  65. protectedvoiddestroyApp(booleanunconditional)
  66. throwsMIDletStateChangeException{  
  67. //TODO:Implementthismethod.  
  68. }  
在“resource”的文件夾下新建兩個文件,一個是“polish.css”文件,並在“polish.css”文件中輸入以下CSS樣式代碼:  

  1. vIEwplaincopytoclipboardprint?  
  2. .stringItem{  
  3. margin-top:2;  
  4. padding:2;  
  5. padding-left:5;  
  6. font{  
  7. color:black;  
  8. size:medium;  
  9. style:bold;  
  10. }  
  11. layout:left;  
  12. }  
  13. .stringItem{  
  14. margin-top:2;  
  15. padding:2;  
  16. padding-left:5;  
  17. font{  
  18. color:black;  
  19. size:medium;  
  20. style:bold;  
  21. }  
  22. layout:left;  
  23. }  

然後為了可以順利的運行,我們需要稍稍改動一下build.xml中的設置,在build.XML文件中找到 

  1. vIEwplaincopytoclipboardprint?  
  2. <jad> 
  3. <attributenameattributename="Nokia-MIDlet-Category"
  4. value="Game"if="polish.group.SerIEs40"/> 
  5. </jad> 
  6. <jad> 
  7. <attributenameattributename="Nokia-MIDlet-Category"
  8. value="Game"if="polish.group.SerIEs40"/> 
  9. </jad> 

在<jad>標簽內加入一句,變成這樣 

  1. vIEwplaincopytoclipboardprint?  
  2. <jad> 
  3. <attributenameattributename="Nokia-MIDlet-Category"value="
  4. Game"if="polish.group.SerIEs40"/> 
  5. <attributenameattributename="MIDlet-1"
  6. value="HelloPolish,,com.polish.learning.PolishHello"/> 
  7. </jad> 
  8. <jad> 
  9. <attributenameattributename="Nokia-MIDlet-Category"
  10. value="Game"if="polish.group.SerIEs40"/> 
  11. <attributenameattributename="MIDlet-1"
  12. value="HelloPolish,,com.polish.learning.PolishHello"/> 
  13. </jad> 

最後,我們來運行,在PolishHello.Java上點擊右鍵,在彈出的菜單上選擇【RunAs】->再在右邊選擇【J2ME PolishMIDlet】;可能此時會碰到幾種運行時的問題

1.控制台中提示

  1. com.sun.tools.Javac.Mainisnotontheclasspath.  
  2. PerhapsJava_HOMEdoesnotpointtotheJDK 

在網上查了很多的解決辦法都比較麻煩,這裡有一種簡單的方法,就是
Trycopyingtools.jarfromjava\jdk1.6.0_11\libtoJava\jre6\lib,將jdklib目錄下的tools.jar文件直接拷貝到jre的lib目錄中,然後關閉Eclipse再重新打開運行工程文件,上述問題便會得到解決。

2.【注意】:在<jad>標簽內加入的那句話一定要書寫正確,尤其是value中的值:

value="HelloPolish,,com.polish.learning.PolishHello",首先是這個J2ME Polish的工程文件名,然後是剛剛在創建Polish時Generatetemplate?選項中的設置的包名和主類名(不用加後綴.java),這兩個之間有兩個英文的逗號,這兩個逗號可一個都不能少,不然會出現問題。至少本人當初設置時因為少了一個逗號,運行時出現了HelloPolish,nullException:Java.lang.NullPointerException的異常,希望大家注意!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved