Android ant build项目失败

时间:2012-11-17 20:03:39

标签: android ant

我正在尝试创建Android UI测试。 我已按照此链接中的示例进行操作:http://developer.android.com/tools/testing/testing_ui.html#running

请注意,在“构建和部署您的uiautomator测试”阶段,有一个错误,第一个命令必须是/ tools / android 创建 uitest-project -n -t 1 -p。无论如何,这不是我的问题。

我的问题是步骤“ant build”,我收到了这个错误:

-post-compile:

-dex:
      [dex] input: c:\Users\tabony\workspace\bin\classes
      [dex] Converting compiled files and external libraries into c:\Users\tabony\workspace\bin\classes.dex...
      [dx] no classfiles specified

BUILD FAILED
    c:\Program Files (x86)\Android\android-sdk\tools\ant\ **uibuild.xml:197: null returned: 1**

Total time: 1 second

非常感谢您的帮助。

3 个答案:

答案 0 :(得分:0)

在这里回答:Adding external jars to an Android UIautomator project

请使用neeraj t提供的custom_rules.xml文件(下面给出的编辑版本)。

neeraj t的最后一个答案对我有用。我需要做的唯一更新是:将jar放入libs而不是'lib'文件夹,并将custom_rule.xml命名为custom_rules.xml,并将所有内容放入项目中,如下所示(我也在原始解决方案上发布了一个编辑)

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

<property name="jar.libs.dir" value="libs" />
<property name="jar.libs.absolute.dir" location="${jar.libs.dir}" />
<path id="classpath">
    <fileset dir="${jar.libs.absolute.dir}">
        <include name="your-helping-version.jar" />
        <include name="gson-2.2.2.jar" />
    </fileset>
</path>

<!-- version-tag: VERSION_TAG -->
<import file="${sdk.dir}/tools/ant/uibuild.xml" />


<!-- overwrite the compile target in uibuild.xml to include to external 
    jars -->
<target name="compile" depends="-build-setup, -pre-compile">
    <javac encoding="${java.encoding}" source="${java.source}"
        target="${java.target}" debug="true" extdirs="" includeantruntime="false"
        destdir="${out.classes.absolute.dir}" bootclasspathref="project.target.class.path"
        verbose="${verbose}" fork="${need.javac.fork}">
        <src path="${source.absolute.dir}" />
        <classpath refid="classpath" />
        <compilerarg line="${java.compilerargs}" />
    </javac>
</target>

<!-- overwrite the -dex target in uibuild.xml to include external jar files 
    into the target dex file. -->
<target name="-dex" depends="compile, -post-compile">
    <dex executable="${dx}" output="${intermediate.dex.file}"
        nolocals="@{nolocals}" verbose="${verbose}">
        <fileset dir="${jar.libs.absolute.dir}">
            <include name="your-helping-version.jar" />
            <include name="gson-2.2.2.jar" /> 
        </fileset>
        <path path="${out.classes.absolute.dir}" />
    </dex>
</target>
</project> 

答案 1 :(得分:0)

我得到了同样的错误。我犯的错误是:  我只设置路径,直到我的项目所在的目录。(之前的一步) 有xyz/projects/Tests

错误:将路径指定为:xyz/project

更正路径:xyz/projects/Tests

答案 2 :(得分:-1)

确保必须安装Apache ant软件,并且ant.exe文件的路径应放在PATH varable