Android SDK Tools R20,用于第三方库和Ant构建的javadoc

时间:2012-06-28 19:19:08

标签: android ant

自昨天发布SDK API 16和SDK工具R20以来,我一直无法完成新工具的组合工作,能够看到Eclipse中的javadoc盘旋并且能够做到从命令行创建Ant。

当R17工具发布时,有必要将所有第三方jar放入新的libs目录中。不幸的是,这意味着您无法在那里指定jar的javadoc的位置。广泛使用的解决方法是将jar放在另一个文件夹中,在构建属性中指定并导出它。这对我有用,直到R20出现。

最简单示例中的我的build.xml是新创建的示例项目中的标准版本,除了从属性文件传递项目名称。 (我把jar放在' lib'目录中)

我有一个形式为:

的ant.properties文件
projectname=MyProject

jar.libs.dir=lib

build.sysclasspath=last
workspace.dir=/dev/projects/EclipseIndigo/AndroidWorkTwo
outbasebase.dir=/dev/projects/AntBuilds
base.dir=${workspace.dir}/${projectname}

source.dir=${base.dir}/src
outbase.dir=${outbasebase.dir}/${projectname}
ant.project.name=${projectname}
out.dir=${outbase.dir}/bin
layout.dir=${base.dir}/res/layout

key.store=<hidden>
key.alias=<hidden>
key.store.password=<hidden>
key.alias.password=<hidden>

现在,在Ant命令行构建(ant发布)中的编译目标失败,因为它无法在jar中找到类。 设置 project.all.jars.path tested.project.classpath 的各种组合也不会使它工作。

有没有人有任何恢复旧功能的建议?

尽管this issue的评论21中有评论,但如果jars在libs中,添加.properties文件并不能启用javadoc。 (将jar放入libs仍然可以使我的自定义build.xmls与Ant一起使用,这样就可以了!)似乎修复了库项目和测试机制的复杂集成被认为是重要的,同时破坏了基本功能像IDE中的javadocs支持可以安全地忽略。

1 个答案:

答案 0 :(得分:0)

我找到的唯一有效的是答案here。 我将此添加到我的custom_rules.xml模板中,似乎工作正常。 在我们得到更好的解决方案之前,我认为它只比向ant.properties文件添加路径多几行。

<target name="-pre-compile">
    <path id="project.all.jars.path">
    <path path="${toString:project.all.jars.path}"/>
    <fileset dir="${jar.libs.dir}">
        <include name="*.jar"/>
    </fileset>
    </path>
</target>