Java运行ant之import requires support in ProjectHelper

  Android 3.0之后,原来写的打包脚本完全不能使用了。因为sdk中废弃了apkbuilder,各种尝试解决无果,最后还是决定使用官方提供的打包脚本。也就是位于sdk目录tools文件夹下的build.xml。
  试用了一下,果然强大。在项目目录下,配置好构建脚本所需的变量即可。网上教程很多,不在这里赘述。我的工程中有一部分java调换用ant的代码,在运行时报:
 xxxxxx  build.xml:70: import requires support in ProjectHelper
难道是ant版本的问题,示例代码是:

   
File buildFile = new File("build.xml");
Project p = new Project();
p.init();
ProjectHelper helper = ProjectHelper.getProjectHelper();
helper.parse(p, buildFile);
p.executeTarget(p.getDefaultTarget());




Project 是 Ant 中用于表示带有其所有目标、任务和属性的 Ant 项目的 Java 类。它初始化此项目;这将导致该项目执行某一内部安装程序。然后,它回去寻找缺省的 ProjectHelper,并使用该 ProjectHelper 分析我们传入的构建文件。
这个错误就出现在分析helper.parse(p, buildFile)

  个人感觉应该是版本变动的问题,网上找到一篇说明,参见资料


ant版本1.5以上调用上面的代码,1.5以下,调用下面代码即可。

File buildFile = new File("build.xml");
Project p = new Project();
p.init();
ProjectHelper.configureProject(p,buildFile);
p.executeTarget(p.getDefaultTarget());


 
我的ant版本为1.8.4 ,更改之后,也可以顺利的构建项目。虽然废弃但还是有效。

你可能感兴趣的:(Java运行ant之import requires support in ProjectHelper)