【问题标题】:With Ant, how do I create seperate jar files from one src directory?使用 Ant,如何从一个 src 目录创建单独的 jar 文件?
【发布时间】:2011-07-19 15:06:34
【问题描述】:

我有一个源目录,我试图在其中创建单独的 cod 文件,因为我的资源(PNG 文件)超出了 RAPC 编译器的限制。

我正在尝试创建:

  1. .cod(s) 用于源
  2. .cod(s) 用于低分辨率。资源
  3. .cod(s) 用于高分辨率。资源

我成功创建了以下内容:

AppMeasurement_BlackBerry.cod

com_mch_coffeehouse-1.cod

com_mch_coffeehouse.cod

com_mch_coffeehouse.jad

com_mch_coffeehouse_resources_hires-1.cod

com_mch_coffeehouse_resources_hires-2.cod

com_mch_coffeehouse_resources_hires-3.cod

com_mch_coffeehouse_resources_hires-4.cod

com_mch_coffeehouse_resources_hires-5.cod

com_mch_coffeehouse_resources_hires-6.cod

com_mch_coffeehouse_resources_hires-7.cod

com_mch_coffeehouse_resources_hires.cod

com_mch_coffeehouse_resources_lowres-1.cod

com_mch_coffeehouse_resources_lowres-2.cod

com_mch_coffeehouse_resources_lowres-3.cod

com_mch_coffeehouse_resources_lowres-4.cod

com_mch_coffeehouse_resources_lowres.cod

common-1.cod

common.cod

但是,应用程序没有启动,并且从设备上的事件日志中,我收到了精彩的加密消息:

RIM 无线手持 Java 加载器 版权所有 2001-2009 Research In Motion Limited 连接的 guid:0x97C9F5F641D25E5F 时间:1969 年 12 月 31 日星期三 19:00:00 严重性:0 类型:2 应用程序:系统数据:JVM:INFOp=23575346,a='5.0.0.979',o='5.1.0.177',h=4001507 guid:0x9C3CD62E3320B498 时间:2011 年 7 月 1 日星期五 16:59:26 严重性:1 类型:3 应用程序:Java 异常数据: 错误 没有详细信息 com_mch_coffeehouse(4E0E2E1F) 咖啡屋客户 0x3764 com_mch_coffeehouse(4E0E2E1F) 咖啡屋客户 主要的 0x30BD guid:0x0 时间:2011 年 7 月 1 日星期五 16:59:26 严重性:2 类型:3 应用程序:数据: 追溯:

guid:0x97C9F5F641D25E5F 时间:2011 年 7 月 1 日星期五 16:59:31 严重性:0 类型:2 应用程序:系统数据:JVM:INFOp=23575346,a='5.0.0.979',o='5.1.0.177', h=4001507

无论如何,非常感谢任何帮助或建议,在这成为一个关键的阻止者之前 - yippee!

我的 Ant 脚本:

<?xml version="1.0" encoding="UTF-8"?>

<property name="package.label" value="com_mch_coffeehouse" />

<property name="lowres.label" value="com_mch_coffeehouse_resources_lowres" />

<property name="hires.label" value="com_mch_coffeehouse_resources_hires" />

<property name="jde.home" value="C:\Eclipse3.6\plugins\net.rim.ejde.componentpack5.0.0_5.0.0.25\components" />

<property name="workspace" value="C:\Users\jtp\Documents\mch" />

<property name="appmeasure" value="${workspace}\AppMeasurement_BlackBerry\deliverables\Standard\5.0.0" />

<property name="common" value="${workspace}\Common-BlackBerry\deliverables\Standard\5.0.0" />

<property name="simulator" value="${jde.home}\simulator" />

<property name="bin" value="${jde.home}\bin" />

<property name="src" value="src" />

<property name="respackage" value="${src}\com\mch\coffee_house\res" />

<property name="hi" value="${respackage}\hi" />

<property name="low" value="${respackage}\low" />

<property name="dest" value="deliverables" />

<property name="ota.dir" value="${dest}\ota" />

<target name="debug" depends="ota" description="Build, deploy project and Launches Remote Debug Server">
    <exec executable="cmd.exe" dir="${bin}" spawn="true">
        <arg value="/c" />
        <arg value="jdwp.bat" />
    </exec>
</target>

<target name="simulate" depends="ota" description="Build, deploy project and Launches Simulator">
    <exec executable="cmd.exe" dir="${simulator}" spawn="true">
        <arg value="/c" />
        <arg value="${simulator}\9700.bat" />
    </exec>
</target>

<target name="ota" depends="build" description="Build OTA project.">
    <mkdir dir="${ota.dir}" />
    <jadtool input="${dest}\${package.label}.jad" destdir="${ota.dir}">
        <fileset dir="${appmeasure}" includes="*.cod" />
        <fileset dir="${common}" includes="*.cod" />
        <fileset dir="${dest}" includes="*.cod" />
    </jadtool>
</target>

<target name="deploy" depends="build" description="Build and deploy project.">
    <copy todir="${simulator}" overwrite="true">
        <fileset dir="${appmeasure}">
            <include name="*.cod" />
            <include name="*.debug" />
            <include name="*.csl" />
            <include name="*.cso" />
        </fileset>
    </copy>
    <copy todir="${simulator}" overwrite="true">
        <fileset dir="${common}">
            <include name="*.cod" />
            <include name="*.debug" />
            <include name="*.csl" />
            <include name="*.cso" />
        </fileset>
    </copy>
    <copy todir="${simulator}" overwrite="true">
        <fileset dir="${dest}">
            <include name="*.cod" />
            <include name="*.debug" />
            <include name="*.csl" />
            <include name="*.cso" />
        </fileset>
    </copy>
</target>

<target name="build" depends="buildhiresources" description="Builds project.">
    <!-- Copy the resource package to be compiled with preserved folder hierarchy -->
    <!--<copy todir="${dest}">
        <fileset dir="${src}">
            <include name="com/mch/coffee_house/res/low/*.png" />
            <include name="com/mch/coffee_house/res/hi/*.png" />
            <exclude name="**/*.java" />
            <exclude name="com/mch/coffee_house/res/torch/*.png" />
        </fileset>
    </copy>-->
    <!--
    ${appmeasure}\AppMeasurement_BlackBerry.jar:${common}\danicacommon.jar:${dest}\com_mch_coffeehouse_resources_hires.jar:${dest}\com_mch_coffeehouse_resources_lowres.jar
    -->
    <rapc jdehome="${jde.home}" jdkhome="${java.home}" import="${appmeasure}\AppMeasurement_BlackBerry.jar:${common}\danicacommon.jar:${dest}\com_mch_coffeehouse_resources_hires.jar:${dest}\com_mch_coffeehouse_resources_lowres.jar" destdir="${dest}" noconvert="false" output="${package.label}" quiet="true" verbose="false" generatesourcelist="false" nopreverify="true">
        <jdp type="cldc" title="mch coffeehouse" vendor="MCH Inc" version="1.0.0" description="Find a coffee house from your BlackBerry device." arguments="" systemmodule="false" runonstartup="false" startuptier="7" ribbonposition="0" nameresourcebundle="com.mch.coffeehouse" nameresourceid="0" icon="../src/com/mch/coffee_house/res/hi/icon.png">
        </jdp>
        <src>
            <fileset dir=".">
                <exclude name="src/com/mch/coffee_house/res/hi/*.java*" />
                <exclude name="src/com/mch/coffee_house/res/low/*.java*" />
                <include name="src/**/*.java*" />
                <include name="src/**/*.rrc*" />
                <include name="src/**/*.rrh*" />
                <include name="src/**/*.cod*" />
                <include name="src/**/*.cso*" />
                <include name="src/**/*.MF*" />
                <!-- Add the preserved folder hierachy to be compiled as is -->
                <!--<include name="${dest}/com/**/*.*" />-->
            </fileset>
        </src>
    </rapc>
    <sigtool jdehome="${jde.home}" password="########" close="false">
        <fileset dir="${dest}" includes="*.cod" />
    </sigtool>
</target>
<!-- Hi Res. Resources -->
<target name="buildhiresources" depends="buildlowresources" description="Builds low resolution resources project.">
    <!-- Copy the resource package to be compiled with preserved folder hierarchy -->
    <copy todir="${dest}">
        <fileset dir="${src}">
            <include name="com/mch/coffee_house/res/hi/*.png" />
            <exclude name="com/mch/coffee_house/res/low/*.png" />
            <exclude name="**/*.java" />
            <exclude name="com/mch/coffee_house/res/torch/*.png" />
        </fileset>
    </copy>
    <rapc jdehome="${jde.home}" jdkhome="${java.home}" destdir="${dest}" noconvert="false" output="${hires.label}" quiet="true" verbose="false" generatesourcelist="false" nopreverify="true">
        <jdp type="library" title="MCH Library" vendor="MCH Inc" version="1.0.0" description="coffeehouse hi-res resources library.">
        </jdp>
        <src>
            <fileset dir=".">
                <!-- Add the preserved folder hierachy to be compiled as is -->
                <include name="src/com/mch/coffee_house/res/hi/*.java*" />
                <include name="${dest}/com/**/*.*" />
                <exclude name="${dest}/com/mch/coffee_house/res/low/*.png" />
            </fileset>
        </src>
    </rapc>
    <sigtool jdehome="${jde.home}" password="########" close="false">
        <fileset dir="${dest}" includes="*.cod" />
    </sigtool>
</target>
<!-- Low Res. Resources -->
<target name="buildlowresources" description="Builds low resolution resources project.">
    <!-- Copy the resource package to be compiled with preserved folder hierarchy -->
    <copy todir="${dest}">
        <fileset dir="${src}">
            <exclude name="com/mch/coffee_house/res/hi/*.png" />
            <include name="com/mch/coffee_house/res/low/*.png" />
            <exclude name="**/*.java" />
            <exclude name="com/mch/coffee_house/res/torch/*.png" />
        </fileset>
    </copy>
    <rapc jdehome="${jde.home}" jdkhome="${java.home}" destdir="${dest}" noconvert="false" output="${lowres.label}" quiet="true" verbose="false" generatesourcelist="false" nopreverify="true">
        <jdp type="library" title="MCH Library" vendor="MCH Inc" version="1.0.0" description="coffeehouse low-res resources library.">
        </jdp>
        <src>
            <fileset dir=".">
                <!-- Add the preserved folder hierachy to be compiled as is -->
                <include name="src/com/mch/coffee_house/res/low/*.java*" />
                <include name="${dest}/com/**/*.*" />
            </fileset>
        </src>
    </rapc>
    <sigtool jdehome="${jde.home}" password="########" close="false">
        <fileset dir="${dest}" includes="*.cod" />
    </sigtool>
</target>

<target name="clean" description="Clean the destination directory.">
    <delete dir="${ota.dir}" failonerror="no" />
    <delete dir="${dest}" failonerror="no" />
    <mkdir dir="${dest}" />
</target>

【问题讨论】:

    标签: java blackberry ant


    【解决方案1】:

    使用BlackBerry Ant ToolsPreprocessor 生成包含源文件和资源的单独文件夹,使用compile them 分隔应用程序文件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-26
      • 2018-05-14
      • 2012-08-27
      • 1970-01-01
      • 2014-11-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多