使用Ant编译具有数据存储区回调的AppEngine项目

时间:2012-04-09 13:45:50

标签: google-app-engine ant google-cloud-datastore annotation-processing

我已经在AppEngine项目中实现了datastore callbacks,并在链接中指示的Eclipse中进行设置。

现在我无法在Ant中编译它。这就是我现在对javac目标所拥有的:

<path id="appengine.api.path">
    <pathelement location="${appengine.folder}/lib/impl/appengine-api.jar" />
</path>

<target name="javac" depends="clean,libs" description="Compile java source">
    <mkdir dir="war/WEB-INF/classes" />
    <apt compile="false" preprocessdir=".apt_build_generated" destdir="war/WEB-INF/classes"
        srcdir="src"
        factorypathref="appengine.api.path"
        >
    </apt>
    <javac srcdir="src" includes="**" encoding="utf-8" destdir="war/WEB-INF/classes" source="1.6" target="1.6" nowarn="true" debug="true" debuglevel="lines,vars,source">
        <classpath refid="project.class.path" />
    </javac>
    <copy todir="war/WEB-INF/classes">
        <fileset dir="src" excludes="**/*.java" />
    </copy>

</target>

apt任务运行但它只是列出了一堆没有处理器的注释,包括PrePut注释。

我已经尝试将factorypathref设置为$ {appengine.folder} /lib/impl/appengine-api.jar但是它说没有找到appengine-api.jar引用(我已验证路径存在) 。我还查看了jar文件,看看我是否可以找到它用作工厂的类,但还没有找到它。

1 个答案:

答案 0 :(得分:0)

终于发现了这个问题。出于其他原因,我们在Ant构建中使用了Eclipse编译器。当我们切换回内置的Java编译器时,注释处理器开始正常工作。