Я создаю проект, используя плагин maven-jaxb2.
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
Я установил параметр эпизода
<episode>true</episode>
Однако я вижу, что файл .episode не создается. Мне нужен этот файл, чтобы этот проект можно было использовать как эпизод в другом зависимом проекте.
В журналах сборки maven я вижу эти журналы, которые указывают, что параметр Episode & EpisodeFile, поддерживаемый xjc, не поддерживается плагином:
[WARNING] Unknown plugin option: -episode
[WARNING] Unknown plugin option: C:\projecdir\src\main\generated-sources\META-INF\sun-jaxb.episode
Это ошибка в плагине? Также есть ли какой-либо известный обходной путь для этого.
Обновление: что-то странное происходит, когда useDependenciesAsEpisodes
не равно false
useDependenciesAsEpisodes = true
Когда это было правдой, это показывает предупреждение выше. Эта сборка работает, но файл эпизода не создается.
useDependenciesAsEpisodes = false
Когда я устанавливаю для этого параметра значение false, создается файл эпизода.
Однако у меня были дополнительные аргументы для плагина, которые ломали сборку.
<args>
<arg>-typeId=7000</arg>
...
</args>
Ошибка:
Caused by: com.sun.tools.xjc.BadCommandLineException: unrecognized parameter -typeId=7000
at com.sun.tools.xjc.Options.parseArguments(Options.java:817)
at org.jvnet.mjiip.v_2.OptionsFactory.createOptions(OptionsFactory.java:91)
... 24 more
Я должен удалить дополнительные аргументы, чтобы это работало. Однако мне нужны эти аргументы для некоторых плагинов jaxb (как показано здесь), используемых вместе с maven-jaxb2-плагин
<configuration>
<extension>true</extension>
<args>
<arg>-XtoString</arg>
<arg>-Xequals</arg>
<arg>-XhashCode</arg>
<arg>-Xcopyable</arg>
</args>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version><!-- version --></version>
</plugin>
</plugins>
</configuration>
<args />
- person Luca Basso Ricci   schedule 07.08.2015<arg>
должен иметь-
впереди, как<arg>-episode</arg>
и<arg>-episodefile target.episode</arg>
- person Luca Basso Ricci   schedule 07.08.2015typeId
arg, включен в<plugins>
? обычно это причина - person Luca Basso Ricci   schedule 07.08.2015