如何指示ant构建工具在build.xml中包含另一个项目的文件

时间:2015-02-14 15:23:31

标签: java android eclipse ant

我的Eclipse ADT Android工作区中有两个项目

MyProject
MyProjectUITests

我已在MyProject构建路径中包含MyProjectUITests,因此我可以使用MyProject中的常量类

然后我执行以下操作(这是CMD命令的.bat文件):

@ECHO OFF
SETLOCAL
e:
CD \adt-bundle-windows-x86_64-20140702\sdk\tools\
CALL android create uitest-project -n automated_tests -t 16 -p C:\Users\Jofh\Desktop\MyProject\MyProject\automated_tests"
c:
CD "\Users\Jofh\Desktop\MyProject\MyProject\automated_tests"
CALL ant build
CALL adb push "C:\Users\Jofh\Desktop\MyProject\MyProject\automated_tests\bin\automated_tests.jar" /data/local/tmp
CALL adb shell uiautomator runtest automated_tests.jar -c com.example.myproject.automated.AppTest
pause

现在,包括其他项目构建路径中的一个项目足以在Eclipse中编译项目,但是当我运行此脚本时,我收到一条错误消息,指出MyProject中的类不存在。

我在网上看到,当我通过ant build构建时,我必须在build.xml文件中包含MyProject但是我该怎么做?

2 个答案:

答案 0 :(得分:0)

您可以使用ant目标,如:

<ant antfile="myOtherBuildFile" target="mytarget" />

答案 1 :(得分:0)

  

我已将MyProject包含在MyProjectUITests构建路径中,因此我可以使用MyProject中的常量类

因此,假设您已将MyProject作为库添加到MyProjectUITests。然后,您不需要将MyProject添加到build.xml的{​​{1}},因为MyProjectUITests已在MyProject project.properties中定义。然后,如果您还没有为MyProjectUITests创建build.xml,则需要创建MyProject

要为build.xml创建MyProject,只需从命令行转到MyProject的根目录,然后运行android update project -p .

现在,您可以在ant clean release

的根目录下运行MyProjectUITests