Я использую jaxb2-annotate-plugin для добавления аннотаций проекта lombok в мой сгенерированный код Java.В некоторых случаях плагин добавляет необязательную (в данном случае экспериментальную) дополнительную информацию к аннотации.
Класс аннотации - lombok.NoArgsConstructor, который имеет необязательный экспериментальный параметр onConstructor
Типичный и ожидаемыйвывод должен быть просто:
@NoArgsConstructor
public class Foo ...
Но я получаю
@NoArgsConstructor(onConstructor = {
})
public class Foo ...
Я не хочу, чтобы добавленный параметр (не уверен, каков соответствующий термин для этого), и вКроме того, это неверно, так как требует дополнительной информации, в данном случае аннотации для добавления в сгенерированный конструктор.
Итак, 2 вопроса:
Как я могу подавить эту добавленную информацию?
Если я действительно хочу этот добавленный параметр,Как бы я добавил необходимую дополнительную информацию?
спасибо, Линус
пс.Кроме того, не имеет прямого отношения к вопросу: этот плагин является новым для меня.Я изменил файл build.xml из одного из предоставленных примеров для запуска xjc с плагином через ant.В то время как код генерируется должным образом, вывод, кажется, говорит иначе.Подробный вывод муравья следует.Файл build.xml находится в jaxb2-annotate-plugin-master / samples / annotate / target / test-ant-Assembly / jaxb2-annotate-plugin-sample-annotate-1.1.1-SNAPSHOT /
ant -verbose generate-sources JAVA_HOME: /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home
Apache Ant (TM) версия 1.10.1, скомпилированная 2 февраля 2017 г. Попытка файла сборки по умолчанию:build.xml Файл сборки: /Users/kamb/workspace/oads_xml/versions/a0.2/build.xml Обнаруженная версия Java: 1.8 in: /Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre
Обнаруженная ОС: файл разбора Mac OS X /Users/kamb/workspace/oads_xml/versions/a0.2/build.xml с URI = файл: /Users/kamb/workspace/oads_xml/versions/a0.2/build.xml Базовый каталог проекта установлен в: /Users/kamb/workspace/oads_xml/versions/a0.2
файл jar: build: file: /opt/local/apache-ant-1.10.1/lib/ant.jar! /org / apache / tools / ant / antlib.xml с URI = jar: файл: /opt/local/apache-ant-1.10.1/lib/ant.jar! /org/apache/tools/ant/antlib.xml иззиp file [property] Загрузка среды env.Переопределение игнорируется для свойства "java.home" Последовательность сборки для цели (ей) `generate-sources 'равна [generate-sources] Полная последовательность сборки: [generate-sources, check, compile, package, install, test-compile, test,clean,]
generate-sources:
[xjc] идентификатор сборки XJC равен 2.3.0
[xjc] Проверка метки времени /Users/kamb/workspace/oads_xml/versions/a0.2/bindings.xjb
[xjc] Проверка метки времени /Users/kamb/workspace/oads_xml/versions/a0.2/commonTypes.xjb
[xjc] Проверка метки времени / Users / kamb / workspace / oads_xml / version / a0.2 / person.xjb
[xjc] Проверка метки времени /Users/kamb/workspace/oads_xml/versions/a0.2/variables.xjb
[xjc] Проверка метки времени / Users / kamb / workspace / oads_xml /version / a0.2 / commonTypes.xsd
[xjc] Проверка метки времени /Users/kamb/workspace/oads_xml/versions/a0.2/oads_metadata_a0.2.xsd
[xjc] Проверка метки времени / Users /kamb / workspace / oads_xml / версии / a0.2 / person.xsd
[xjc] Проверка метки времени / Users / kamb / workspace / oads_xml / version / a0.2 / variables.xsd
[xjc] время последнего изменения входов равно 1553044581000
[xjc] время последнего изменения выходов равно -9223372036854775808
[xjc] Рассмотрим использование/ чтобы XJC не делал ненужной компиляции
[xjc] Файл компиляции: /Users/kamb/workspace/oads_xml/versions/a0.2/commonTypes.xsd и другие
[xjc] Запись выходных данных для / Users/kamb/workspace/oads_xml/versions/a0.2/gen_src
[xjc] Command invoked: xjc/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home/jre/bin/java
[xjc] failure in the XJC task. Use the Ant -verbose switch for more details
/Users/kamb/workspace/oads_xml/versions/a0.2/build.xml:106: xjc failed
at com.sun.tools.xjc.XJCBase.execute(XJCBase.java:731)
at com.sun.tools.xjc.XJC2Task.execute(XJC2Task.java:55)
at org.jvnet.jaxb2_commons.xjc.XJC2Task.execute(XJC2Task.java:35)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:293)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:435)
at org.apache.tools.ant.Target.performTasks(Target.java:456)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1405)
at org.apache.tools.ant.Project.executeTarget(Project.java:1376)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1260)
at org.apache.tools.ant.Main.runBuild(Main.java:857)
at org.apache.tools.ant.Main.startAnt(Main.java:236)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:287)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:113)