2015-08-26 4 views
1

Можно ли одновременно работать с несколькими схемами xsd с плагином-maven-plugin?Несколько схем XSD для ролика с плагином-maven-plugin

Я использую его во вращение (SCHEMA1 и SCHEMA2) в POM, и она работает:

<build> 
    ... 
    <plugins> 
     <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>castor-maven-plugin</artifactId> 
      <version>2.1</version> 
      <configuration> 
       <schema>src/main/castor/schema1.xsd</schema> 
       <dest>src/main/java</dest> 
       <packaging>com.path.to.schema1.beans</packaging> 
      </configuration> 
      <executions> 
       <execution> 
        <goals> 
         <goal>generate</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 

...

с небольшой проблемой: МВН: установка собирает все классы целевых кроме chema2 .crd (или schema1, если я использую схему2). Мне нужно скопировать файл вручную.

Могу ли я исправить это? Есть ли способ настроить плагин-maven-plugin?

ответ

2

Попробуйте использовать несколько казней, как это:

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>castor-maven-plugin</artifactId> 
    <version>2.1</version> 
    <executions> 
     <execution> 
      <id>firstSchema</id> 
      <goals> 
       <goal>generate</goal> 
      </goals> 
      <configuration> 
       <schema>src/main/castor/schema1.xsd</schema> 
       <dest>src/main/java</dest> 
       <packaging>com.path.to.schema1.beans</packaging> 
      </configuration> 
     </execution> 
     <execution> 
      <id>secondSchema</id> 
      <goals> 
       <goal>generate</goal> 
      </goals> 
      <configuration> 
       <schema>src/main/castor/schema2.xsd</schema> 
       <dest>src/main/java</dest> 
       <packaging>com.path.to.schema2.beans</packaging> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 
+0

Большое спасибо! Оно работает. Но вы должны добавить тегов в каждый , чтобы идентифицировать каждый из них. – user2602807

+0

Хорошая добыча! Я вырезал-n-вставил то, что было в вопросе, чтобы создать ответ и пропустил, что идентификатора там нет. Теперь это исправлено. – user944849

+0

Как-то он просто работал, используя цель 'generate-sources'. Попытка с помощью 'castor: generate' просто не выполняла конфигурацию выполнения –