Каков наилучший способ поддержки нескольких пакетов в scalaxb в проекте maven?

В плагине maven-jaxb2 можно поддерживать несколько сгенерированных пакетов в одном проекте maven, так как configuration это ребенок execution в схеме конфигурации плагина, но, похоже, это не относится к scalaxb-maven-plugin; см. сравнение ниже:

<plugins>
  <plugin>
    <groupId>org.jvnet.jaxb2.maven2</groupId>
    <artifactId>maven-jaxb2-plugin</artifactId>
    <version>0.12.3</version>
    <executions>
      <execution>
        <id>simulation-params</id>
        <phase>generate-sources</phase>
        <goals>
          <goal>generate</goal>
        </goals>
        <configuration>
          <extension></extension>
          <args>
            <arg>-Xdefault-value</arg>
          </args>
          <plugins>
            <plugin>
              <groupId>org.jvnet.jaxb2_commons</groupId>
              <artifactId>jaxb2-default-value</artifactId>
              <version>1.1</version>
            </plugin>
          </plugins>
          <generatePackage>edu.cornell.ansci.dairy.econ.simulation.config.params</generatePackage>
          <schemaDirectory>${basedir}/src/main/resources/params</schemaDirectory>
          <generateDirectory>${basedir}/target/generated-sources/xjc1</generateDirectory>
          <forceRegenerate>true</forceRegenerate>
        </configuration>
      </execution>
      <execution>
        <id>simulation-config</id>
        <phase>generate-sources</phase>
        <goals>
          <goal>generate</goal>
        </goals>
        <configuration>
          <extension></extension>
          <args>
            <arg>-Xdefault-value</arg>
          </args>
          <plugins>
            <plugin>
              <groupId>org.jvnet.jaxb2_commons</groupId>
              <artifactId>jaxb2-default-value</artifactId>
              <version>1.1</version>
            </plugin>
          </plugins>
          <generatePackage>edu.cornell.ansci.dairy.econ.simulation.config</generatePackage>
          <schemaDirectory>${basedir}/src/main/resources/config</schemaDirectory>
          <generateDirectory>${basedir}/target/generated-sources/xjc2</generateDirectory>
          <forceRegenerate>true</forceRegenerate>
        </configuration>
      </execution>
    </executions>
  </plugin>
  <plugin>
    <groupId>org.scalaxb</groupId>
    <artifactId>scalaxb-maven-plugin</artifactId>
    <configuration>
      <packageName>edu.cornell.ansci.dairy.econ.simulation.config</packageName>
      <xsdDirectory>${basedir}/src/main/resources/config</xsdDirectory>
      <outputDirectory>${basedir}/target/generated-sources/xjc2</outputDirectory>
    </configuration>
    <executions>
      <execution>
        <id>scalaxb</id>
        <goals>
          <goal>generate</goal>
        </goals>
      </execution>
    </executions>
  </plugin>
</plugins>

1 ответ

Для полноты... на основе комментария @Andrei, вот эквивалентная конфигурация scalaxb для того, что я имел в jaxb2:

  <plugin>
    <groupId>org.scalaxb</groupId>
    <artifactId>scalaxb-maven-plugin</artifactId>
    <executions>
      <execution>
        <id>simulation-params</id>
        <goals>
          <goal>generate</goal>
        </goals>
        <configuration>
          <packageName>edu.cornell.ansci.dairy.econ.simulation.config.params</packageName>
          <xsdDirectory>${basedir}/src/main/resources/params</xsdDirectory>
          <outputDirectory>${basedir}/target/generated-sources/xjc1</outputDirectory>
        </configuration>
      </execution>
      <execution>
        <id>simulation-config</id>
        <goals>
          <goal>generate</goal>
        </goals>
        <configuration>
          <packageName>edu.cornell.ansci.dairy.econ.simulation.config</packageName>
          <xsdDirectory>${basedir}/src/main/resources/config</xsdDirectory>
          <outputDirectory>${basedir}/target/generated-sources/xjc2</outputDirectory>
        </configuration>
      </execution>
    </executions>
  </plugin>
Другие вопросы по тегам