俺用的是JDK1.5,WTK2.5.2,apache-ant-1.7.0,retroguard-v2.3.1
          俺的目錄結構是這樣的

          --下面是build.xml的內容
          <?xml version="1.0" encoding="GB2312"?>
          <project name="第一個MIDP程序" default="all" basedir=".">
            <!-- 引入位于build.properties之中的常用屬性-->
            <property file="build.properties"/>
           
            <target name="prepare" description="準備工作">
              <mkdir dir="${build.dir}"/>
              <mkdir dir="${build.dir.classes}"/>
              <mkdir dir="${build.dir.obfused}"/>
              <mkdir dir="${build.dir.preverified}"/>
              <mkdir dir="${build.dir.bin}"/>
            </target>
           
            <target name="cleandir" description="清除目錄">
              <delete dir="${build.dir}"/>
            </target>
           
            <target name="compile" description="編譯源代碼" depends="prepare">
              <javac debug="on"  bootclasspath="${midp.api}" classpath="${midp.api};."
                srcdir="${src.dir}" destdir="${build.dir.classes}"/>
            </target>

            <target name="beforeobfuse" description="混淆前先打包成JAR" depends="compile">
              <jar basedir="${build.dir.classes}" jarfile="${build.dir.bin.jarunobfus}"/>
            </target>

            <target name="obfuscate" description="使用混淆器" depends="beforeobfuse">
              <java fork="yes" classname="RetroGuard" classpath="${obfuscator.lib};${midp.api};.">
                <arg line="${build.dir.bin.jarunobfus}"/>
                <arg line="${build.dir.bin.jarobfused}"/>
                <arg line="${obfuscator.script}"/>
              </java>
            </target>

            <target name="afterobfuse" description="混淆后再把JAR解包" depends="obfuscate">
              <unzip src="${build.dir.bin.jarobfused}" dest="${build.dir.obfused}"/>
              <delete dir="${build.dir.obfused}/META-INF"/>
            </target>

            <target name="preverify" description="預先審核" depends="afterobfuse">
              <exec executable="${midp.home}/bin/preverify1.1">
                <arg line="-classpath ${midp.api};."/>
                <arg line="-d ${build.dir.preverified}"/>
                <arg line="${build.dir.obfused}"/>
              </exec>
            </target>

            <target name="package" description="包裝成JAR與JAD" depends="preverify">
              <jar basedir="${build.dir.preverified}" jarfile="${build.dir.bin.jar}" manifest="MANIFEST.MF">
                <fileset dir="${res.dir}"/>
              </jar>
              <copy file="${jad}" tofile="${build.dir.bin}/${jad}"/>
            </target>
           
            <target name="run" description="使用模擬器執行">
              <exec executable="${midp.home}/bin/emulator">
                <arg line="-Xdescriptor:${build.dir.bin}/${jad}"/>
              </exec>
            </target>

            <target name="all" description="完成所有步驟" depends="cleandir,package,run"/>
             
          </project>

          --下面是build.properties的內容
          #此文件用來設定一些常用屬性

          #項目名稱
          name=MyFirst

          #JAD與JAR的文件名
          jar=${name}.jar
          jad=${name}.jad

          #源文件所在路徑
          src.dir=src

          #資源文件所在路徑
          res.dir=res

          #建構產物放置位置
          build.dir=build

          #編譯后類文件的放置位置
          build.dir.classes=${build.dir}/classes
          #未經過混淆的JAR文件名
          build.dir.bin.jarunobfus=${build.dir.bin}/${name}-unobfus.jar
          #經過混淆的JAR文件名
          build.dir.bin.jarobfused=${build.dir.bin}/${name}-obfused.jar
          #混淆后類的放置位置
          build.dir.obfused=${build.dir}/obfused

          #經過預先審核之后的類文件放置位置
          build.dir.preverified=${build.dir}/preverified

          #JAD與JAR的放置位置
          build.dir.bin=${build.dir}/bin
          #最終的JAR文件名
          build.dir.bin.jar=${build.dir.bin}/${jar}

          #J2ME Wireless Toolkit所在路徑,這個路徑前的/耽誤我很長時間
          midp.home=D:/WTK252

          #MIDP程序庫所在路徑
          midp.api=${midp.home}/lib/midpapi21.jar;${midp.home}/lib/cldcapi11.jar

          #空白MIDP程序庫所在路徑
          midp.emptyapi=${midp.home}/wtklib/kenv.zip

          #混淆器與控制文件
          obfuscator.lib=retroguard.jar
          obfuscator.script=script.rgs


          --下面是script.rgs文件內容
          .class my/DirstMIDlet

          --下面是MANIFEST.MF文件內容
          MIDlet-Name: HelloWorld
          MIDlet-Version: 1.0.0
          MIDlet-Vendor: Sun Microsystems,Inc.
          MIDlet-Description: Sample Hello World MIDlet
          MIDlet-Info-URL: http://java.sun.com/j2me/
          MIDlet-1: HelloWorld,, my.FirstMIDlet
          MicroEdition-Profile: MIDP-2.1
          MicroEdition-Configuration: CLDC-1.1

          --下面是MyFirst.jad文件內容
          MIDlet-Name: HelloWorld
          MIDlet-Version: 1.0.0
          MIDlet-Vendor: Sun Microsystems,Inc.
          MIDlet-Description: Sample Hello World MIDlet
          MIDlet-Info-URL: http://java.sun.com/j2me/
          MIDlet-Jar-URL: MyFirst.jar
          MIDlet-Jar-Size: 1020
          MIDlet-1: HelloWorld,, my.FirstMIDlet
          MicroEdition-Profile: MIDP-2.1
          MicroEdition-Configuration: CLDC-1.1


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 股票| 常熟市| 琼结县| 普兰店市| 崇信县| 高密市| 洛浦县| 繁峙县| 德清县| 黎平县| 轮台县| 运城市| 额济纳旗| 新宁县| 桃江县| 惠安县| 鄄城县| 南通市| 嘉兴市| 高碑店市| 宜良县| 新泰市| 手游| 大悟县| 肃南| 区。| 台山市| 邢台市| 武冈市| 特克斯县| 云梦县| 凤庆县| 东海县| 霍邱县| 稻城县| 新宾| 舟曲县| 怀柔区| 迁西县| 板桥市| 新疆|