Синтаксическая ошибка схемы JAXB2 при переходе от JDK7 к 8

Я пытаюсь создать плагин Confluence с Java 8. Он собирается правильно с Java 7. Он использует плагин jaxb2-maven-, где выбрасывает одно из определенных исполнений с целью "schemagen" и фаза "generate-resources" ошибка:

[ERROR] Failed to execute goal org.codehaus.mojo:jaxb2-maven-plugin:2.3.1:schemagen (restTypes) on project bb-team-plugin: 
        Execution restTypes of goal org.codehaus.mojo:jaxb2-maven-plugin:2.3.1:schemagen failed: 
        syntax error @[1,1] in file: MY_WORKDIR/target/generated-sources/jaxb/META-INF/sun-jaxb.episode -> [Help 1]

Файл привязок у меня есть:

<jxb:bindings jxb:version="1.0" jxb:extensionBindingPrefixes="xjc"
 xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
 xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc">
    <jxb:globalBindings>
      <xjc:simple />
    </jxb:globalBindings>
</jxb:bindings>

Использование -e или -X в maven не приводит к дополнительным полезным выводам, использование в конфигурации для выполнения выдает предупреждение SAXParseException и ту же ошибку, что и упомянутая выше.

Я сравнил свой sun-jaxb.episode с другими примерами (как на этом сайте https://github.com/highsource/maven-jaxb2-plugin/wiki/Using-Episodes), и он имеет точно такую ​​же структуру, ничего не выглядит уродилась там.

Есть идеи, что может случиться?

1 ответ

Это может быть слишком поздно или не совсем то, что вы ищете, но это может быть полезно для кого-то.

Я столкнулся с той же синтаксической ошибкой ("синтаксическая ошибка @[1,1] в файле:") в моем проекте при попытке сгенерировать XSD из аннотированных классов с помощью JAXB2. Я полагаю, что плагин просматривал и мои xsd-файлы, создавая исключение SAXParseException, поэтому я включил фильтр исключения в pom.xml следующим образом:

                <schemaSourceExcludeFilters>
                    <myExcludes implementation="org.codehaus.mojo.jaxb2.shared.filters.pattern.PatternFileFilter">
                        <patterns>
                            <pattern>\.xsd</pattern>
                        </patterns>
                    </myExcludes>
                </schemaSourceExcludeFilters>

подробнее об этом: http://www.mojohaus.org/jaxb2-maven-plugin/Documentation/v2.2/schemagen-mojo.html

Это сделало это для меня. Еще одна вещь, которую я пробовал ранее, заключалась в удалении пробелов из пути к файлу (в имени моего проекта были пробелы), так как это, кажется, генерирует старую ошибку, которая еще не была исправлена. Об этой проблеме смотрите по адресу: https://github.com/mojohaus/jaxb2-maven-plugin/issues/48

Надеюсь, поможет!

Другие вопросы по тегам