JAXB 2.x и муравей - PullRequest
       11

JAXB 2.x и муравей

2 голосов
/ 02 февраля 2011

Я использую JAXB 2.1.2 с реализацией MOXy . Для создания своего веб-приложения я использую Ant 1.7.1 , а также

package-info.java 

класс для указания содержимого пространства имен.

Все работает нормально, за исключением того, что package-info.java не компилируется. в каталоге сборки нет ожидаемого package-info.class в выделенном каталоге (с классами моего домена).

Как заставить Ant также скомпилировать класс package-info.java?

Я читал об ограничении Ant здесь, но я не могу поверить, что это не было решено? http://ant.apache.org/manual/Tasks/javac.html

Спасибо

1 Ответ

2 голосов
/ 02 февраля 2011

Тем временем я сам нашел обходной путь, поэтому он работает нормально, но только если вы компилируете дважды (каким-то образом целевая папка, в которой хранится файл класса, должна быть старше, чем файл package-info.java):Команды ant в моем build.xml:

<mkdir dir="${realm.classes.dir}"/>
<javac srcdir="${realm.java.dir}" destdir="${realm.classes.dir}"
  classpathref="classpath"
  encoding="${javac.encoding}"
  debug="true"
/>

Мне пришлось использовать дополнительную команду:

<mkdir dir="${realm.classes.dir}"/>
<touch>
  <fileset dir="${realm.java.dir}" includes="**/package-info.java"/>
</touch>
<javac srcdir="${realm.java.dir}" destdir="${realm.classes.dir}"
  classpathref="classpath"
  encoding="${javac.encoding}"
  debug="true"
/>

Если у вас есть лучшее решение, дайте мне знать!

...