2012-06-07 17 views
21

Derlenmiş java sınıflarından xsd dosyaları oluşturmak için wsgen kullanan bir maven projem var.
Sorun, oluşturulan xsd dosyalarını jar olarak kaynaklara eklemek istiyorum.
Kaynak aşaması "işlem sınıfları" aşamasından önce çalıştığından bunları ekleyemiyorum.
"İşlem sınıfları" aşamasından sonra ek kaynak eklemenin bir yolu var mı?maven: Derleme aşamasından sonra oluşturulan kaynaklar nasıl eklenir?

cevap

33
I (kavanoza paket aşamasında daha sonra ambalajlanabilir bir ek alt klasörü ile olabilir hedef/sınıfa XSD dosyaları için çıkış dizin tanımlamak öneriyoruz

. Bu maven-resources-plugin kullanılarak elde edilebilir.

<project> 
    ... 
    <build> 
    <plugins> 
     <plugin> 
     <artifactId>maven-resources-plugin</artifactId> 
     <version>3.0.2</version> 
     <executions> 
      <execution> 
      <id>copy-resources</id> 
      <phase>process-classes</phase> 
      <goals> 
       <goal>copy-resources</goal> 
      </goals> 
      <configuration> 
       <outputDirectory>${project.build.outputDirectory}</outputDirectory> 
       <resources>   
       <resource> 
        <directory>${basedir}/target/xsd-out</directory> 
        <filtering>false</filtering> 
       </resource> 
       </resources>    
      </configuration>    
      </execution> 
     </executions> 
     </plugin> 
    </plugins> 
    ... 
    </build> 
    ... 
</project> 

Sen kaynaklar eklentisi wsgen parçasını çağırmak için kullanılan eklenti ardına yerleştirildiğinden emin dikkat çekmek gerekir. Ayrıca emin kaynakları doğru olacaktır yapmak yerine hazırlamak-paket faz kullanabilirsiniz

+0

Bir çekicilik gibi çalıştık! lot –

+0

ve taranacak paket nasıl belirtilir? Ben plugin' 'için execution'' dan 'configuration' taşındıktan sonra tüm paketler – Youssef

+0

Bu yalnızca çalıştı. Maven xsd hem izin verir, fakat bu eklenti hem çalışma dışında olmamıştı için taşıma yapılandırmayı –

İlgili konular