XJC эпизод с Maven - PullRequest
       27

XJC эпизод с Maven

0 голосов
/ 29 марта 2012

Как я могу создать эпизод с Maven?Теперь я получаю сообщение об ошибке: an operand is missing (org.apache.cxf:cxf-xjc-plugin:2.4.0:xsdtojava:generate-sources:generate-sources)

Вот мой плагин:

<plugin>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-xjc-plugin</artifactId>
            <version>2.4.0</version>
            <configuration>
                <extensions>
                    <extension>org.apache.cxf.xjcplugins:cxf-xjc-dv:2.4.0</extension>
                </extensions>
            </configuration>
            <executions>
                <execution>
                    <id>generate-sources</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>xsdtojava</goal>
                    </goals>
                    <configuration>
                        <xsdOptions>
                            <xsdOption>
                                <extension>true</extension>
                                <xsd>my.xsd</xsd>
                                <packagename>mypackage</packagename>
                                 <extensionArgs>
                                  <arg>-episode</arg>
                                 </extensionArgs>
                            </xsdOption>
                        </xsdOptions>
                    </configuration>

                </execution>
                <execution>
                 <configuration>
                        <xsdOptions>
                 <xsdOption>
                        <extension>true</extension>
                          <xsd>my.xsd</xsd>
                        <extensionArgs>
                            <arg>-Xdv</arg>
                        </extensionArgs>
                    </xsdOption>
                        </xsdOptions>
                    </configuration>

                </execution>


            </executions>

Редактировать: Создание эпизода работает нормально.В другом проекте файл jar, содержащий эпизод, указан в атрибуте episodes.Но я получаю исключение: Error while parsing schema(s).Location [ file:/D:/workspace/XXX/src/test/resources/XXX.xsd{45,32}]. om.sun.istack.SAXParseException2: compiler was unable to honor this conversion customization. It is attached to a wrong place, or its inconsistent with other bindings. nested in com.sun.istack.SAXParseException2: (the above customization is attached to the following location in the schema)

Это XSD с информацией об эпизодах, которая будет включена в конечный продукт.Это некоторая ссылка на адаптер xjc: javaType в этой строке.Может ли это вызвать проблемы?

1 Ответ

1 голос
/ 29 марта 2012

Плагин, отличный от того, что вы используете, но ниже, отредактированный, работал у меня несколько лет назад. Возможно, вы захотите узнать, доступна ли более поздняя версия плагина и т. Д. Также настройте использование своей схемы и удалите настройку привязок, если она не нужна.

  <plugin>
    <groupId>org.jvnet.jaxb2.maven2</groupId>
    <artifactId>maven-jaxb2-plugin</artifactId>
    <version>0.7.0</version>
    <executions>
      <execution>
        <goals>
          <goal>generate</goal>
        </goals>
      </execution>
    </executions>
    <configuration>
      <schemaDirectory>${basedir}/src/main/xsd</schemaDirectory>
      <schemaIncludes>
        <schemaInclude>Core.xsd</schemaInclude>
      </schemaIncludes>
      <bindingDirectory>${basedir}/src/main/xjb</bindingDirectory>
      <bindingIncludes>
        <bindingInclude>JaxbBindings.xjb</bindingInclude>
      </bindingIncludes>
      <generateDirectory>${project.build.directory}/generated-sources/jaxb</generateDirectory>
      <episode>true</episode>
      <episodeFile>${project.build.directory}/generated-sources/jaxb/META-INF/sun-jaxb.episode</episodeFile>
      <verbose>true</verbose>
    </configuration>
    <dependencies>
      <dependency>
        <groupId>com.sun.xml.bind</groupId>
        <artifactId>jaxb-impl</artifactId>
        <version>2.1.10</version>
      </dependency>
      <dependency>
        <groupId>org.jvnet.jaxb2_commons</groupId>
        <artifactId>jaxb-xjc</artifactId>
        <version>2.1.10</version>
      </dependency>
    </dependencies>
  </plugin>
...