如何使用依赖Java项目的Ant构建Android项目?

我有一个Android库项目,AndroidLib,它依赖于我工作区中的Java项目JavaLib.

在Eclipse中,这是通过将JavaLib项目添加到Java Build Path>来完成的. AndroidLib的项目并将其设置为在Order and Export选项卡中导出,并且构建正常.

但是,在构建AndroidLib时,Ant似乎没有获得对JavaLib项目的依赖(我已经运行了android update lib-project).将此依赖项添加到build.xml的最佳方法是什么?

最佳答案
我有同样的问题.我以一种非常黑客的方式解决了这个问题.

在AndroidLib / build.xml中(或者在AndroidLib / custom_rules.xml中更好),我定义了一个构建JavaLib的-pre-build目标,并在libs /中复制生成的jar.我还定义了一个-post-package目标来删除复制的jar,否则Eclipse会感到困惑.

<property name="lib.javalib.project.dir" location="${basedir}/../JavaLib" />
<target name="-pre-build">
  <subant buildpath="${lib.javalib.project.dir}" target="package" failonerror="true" />
  <copy todir="${basedir}/libs" failonerror="true" verbose="true">
      <fileset dir="${lib.javalib.project.dir}/target">
          <filename name="javalib*.jar"/>
      </fileset>
  </copy>
</target>
<target name="-post-package">
    <delete verbose="true">
        <fileset dir="${basedir}/libs" includes="javalib*.jar" />
    </delete>
</target>

这个解决方案远非令人满意,但它完成了工作.

你会在那里找到类似的问题和答案:Android Ant Include Java Library projects

转载注明原文:如何使用依赖Java项目的Ant构建Android项目? - 代码日志