1

Я реализовал datastore callbacks в нашем проекте AppEngine и настроил его в Eclipse, как указано в ссылке.Скомпилируйте проект AppEngine, который имеет обратные вызовы данных с Ant

Теперь у меня возникли проблемы с его компиляцией в 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> 

меткого задание выполняется, но все это делает список кучи аннотаций, которые не имеют процессора, включая аннотацию PrePut.

Я попытался установить factorypathref в $ {appengine.folder} /lib/impl/appengine-api.jar, но затем он говорит, что ссылка appengine-api.jar не найдена (я проверял путь). Я также просмотрел файл jar, чтобы узнать, могу ли я найти класс, который он использует в качестве фабрики, но еще не нашел его.

ответ

0

И, наконец, обнаружил проблему. Мы использовали компилятор Eclipse в нашей сборке Ant по другим причинам. Когда мы вернулись к встроенному компилятору Java, обработчик аннотации начал работать нормально.