换中思路,Eclipse中用Ant来编译J2me

阅读更多
相信很多朋友都有过这样的经理,不小心把eclipse的一个j2me项目中的

verified/classes目录中的东东删除了。之后才发现eclipse再也不会在这个目录

中生成class了,这下子就可纳闷了。
  
  eclipse为何不是跟netbeans那样用ant来编译、运行j2me的项目呢?我近期都

在研究ant,城市用了2小时做了个比较完善的ant脚本可以来弥补一下eclipse对我

心情的打击了。
  
  下面我把这个脚本和源程序(含demo)贡献出来,大家一起研究探讨。
  
  完成以下功能:
  1.建立基本目录框架
  2.编译src目录中的源文件
  3.调用preverify.exe对类文件进行验证
  4.将类文件生成jar包
  5.调用proguard类对jar包进行混淆,并解压缩
  6.将经过混淆、解压缩后的类、资源文件生成jar包,复制src目录中的jad文

件,完成程序部署
  7.调用emulator运行程序
  
  用法:
  只需要修改一下CONF.properties文件中的属性:
  1.midp.lib.dir-WTK的lib目录路径(位于CONF.properties文件中)
  2.midp.lib.path-根据需要扩展使用的jar(位于CONF.properties文件中)
  3.programName-生成jar/jad文件的名字
  在本脚本中可修改的地方:
  preverify.exe和emulator.exe的具体参数可以根据需要修改。
  
  注意:
  1.src目录中需要有MANIFEST.MF和${programName}.jar文件,这些将用在生成

jar和部署程序时.
  2.res目录中放置使用的png图片文件.
  
  附加类库:
  混淆器类Proguard-位于lib中。
  
  文件说明:
  CONF.properties:配置属性文件
  GEN.properties:生成MANIFEST.MF和${programName}.jad文件的替换属性文件
  JAD.tmp:生成jad文件用到的替换模板文件
  MANIFEST.tmp:生成MANIFEST.MF文件用到的替换模板文件
  
  
  
  
  
  
  
  
  
  
  
  
value="${preverified.dir}\noObfused\classes"/>
  
value="${preverified.dir}\obfused\classes"/>
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  

  
  
  
  
  
  
  

  

  

  
  
  
  
  
  
  

  

  
  
  
    token="@PROGRAMNAME@"
  value="${programName}"
  />
  
    tofile="${src.dir}\MANIFEST.MF">
  
  
  

  

  

  
  
    jarfile="${package.dir}\${programName}-noObfused.jar"
  manifest="${src.dir}\MANIFEST.MF"   >
  
  

  

     
  
  
  
  
  
  
  
  
  
  

    dest="${package.extract.dir}"   />
  

  
     
executable="${preverify.bin}" searchpath="false">
  
  
  
  

  
  
  

  

  
  
    jarfile="${deploy.dir}\${programName}.jar"
  manifest="${src.dir}\MANIFEST.MF"
  >
  
includes="**/*.class;*.png"/>
  

  

  
  
  
  
    token="@JARSIZE@"
  value="${jarsize}"
  />
    token="@PROGRAMNAME@"
  value="${programName}"
  />
  
  
  
  

  

  

你可能感兴趣的:(eclipse,ant,j2me)