1

我已经在我们的 AppEngine 项目中实现了数据存储回调,并在 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 文件以查看是否可以找到它用作工厂但尚未找到的类。

4

1 回答 1

0

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

于 2013-04-13T03:34:58.350 回答