我已经在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文件,看看我是否可以找到它用作工厂的类,但还没有找到它。
答案 0 :(得分:0)
终于发现了这个问题。出于其他原因,我们在Ant构建中使用了Eclipse编译器。当我们切换回内置的Java编译器时,注释处理器开始正常工作。