2005年05月31日

    今天写J2ME代码,用到了Proguard来混淆代码,可原来的bat文件里用到了Sprint WTK的api,现在我要用标准WTK2。0的API来替换,在原*.pro文件里这样写到:

-libraryjars c:\SprintWTK\lib\subclasses.zip

-injars in.jar

-outjar out.jar

-keep public class * extends MIDlet

我用WTK20的API这样替换

-libraryjars c:\WTK20\lib\midp20.jar

结果编译的时候出错。百思不得其解,Why???

后来发现是WTK里midp20.jar的结构和Proguard需要的结构不一致造成的。后来改成这样

-libraryjars c:\WTK20\lib\midp.zip

就成功了。但换成

-libraryjars c:\WTK22\lib\midp.zip后还是出错

可见各个版本WTK里API的组织结构不致造成了混淆不成功。所以在以后需要手工用到Proguard混淆java代码

的时候一定要注意各个WTK版本的不同了!!!