所以我创建了一个包含2个源目录的项目:一个用于实际代码,另一个用于测试。 它在eclipse中运行良好但后来我决定开始使用命令行和ant工具。
Android有一个生成build.xml的内置函数,所以我使用命令'android update project -p ProjectName'
这个用于安装的build.xml工作正常,我可以在模拟器上运行该应用程序。但是,它只编译源目录中的文件,并且不编译测试目录中的文件。这意味着我无法从命令行运行我的单元测试,如果我这样做,我会发现类未找到异常。
有没有办法包含另一个源目录,以便它也可以编译我的单元测试?
这是生成的build.xml(其余是注释,不在此处添加):
<?xml version="1.0" encoding="UTF-8" ?>
<project name="ProjectNameActivity" default="help">
<property file="local.properties" />
<property file="build.properties" />
<property file="default.properties" />
<path id="android.antlibs">
<pathelement path="${sdk.dir}/tools/lib/anttasks.jar" />
<pathelement path="${sdk.dir}/tools/lib/sdklib.jar" />
<pathelement path="${sdk.dir}/tools/lib/androidprefs.jar" />
</path>
<taskdef name="setup" classname="com.android.ant.SetupTask" classpathref="android.antlibs" />
<setup />
</project>
答案 0 :(得分:0)
编译你的android程序的ant任务不在构建文件中,它是导入的。
您需要查看android_rules.xml
导入的build.xml
文件。
build.xml
中有一条注释说明了如何覆盖导入的编译目标。基本上它会指示您复制目标并进行适当的修改。