现在的位置: 首页 > 综合 > 正文

生成在PC和手机都能运行的jar包

2013年01月30日 ⁄ 综合 ⁄ 共 945字 ⁄ 字号 评论关闭

首先看一下可行性。java的字节码规范是一样的,但是两个平台的类库有很多不同,好在程序执行的入口点不同,并且对于根本不会执行到的死代码,里面有什么无所谓。下面看一下具体过程:

首先生成一个midlet

  1. import javax.microedition.midlet.*;
  2. import javax.microedition.lcdui.*;
  3. public
     
    class
     Midlet extends MIDlet {
  4.     
    public
     
    void
     startApp() {
  5.         Display.getDisplay(
    this
    ).setCurrent(
    new
     Form(
    "DM on Mobile"
    ));
  6.     }
  7.     
    public
     
    void
     pauseApp() {
  8.     }
  9.     
    public
     
    void
     destroyApp(boolean unconditional) {
  10.     }
  11. }

然后生成一个Swing程序

  1. import javax.swing.JFrame;
  2. public
     
    class
     Main extends JFrame{
  3.     
    public
     Main() {
  4.         super(
    "DM on Desktop"
    );
  5.         setSize(240, 320);
  6.         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  7.         setVisible(
    true
    );
  8.         
  9.     }
  10.     
    public
     
    static
     
    void
     main(String[] args) {
  11.        
    new
     Main();
  12.     }
  13. }

 

得到两个jar,假设为mdip.jar和pc.jar。用zip类软件打开两个jar,把pc.jar里面的Main.class复制到第一个jar里(如果使用了package要注意路径),修改midp.jar里面的MAINFEST.MF,在最后一行加上Main-Class: Main(实际上就是从pc.jar里面的MAINFEST.MF的Main-Class那行复制过来)。这样得到的jar就可以同时在PC和手机上运行了。

虽然这个例子很简单,但是稍加衍生,就能得到更为广阔的应用。

抱歉!评论已关闭.