2011-11-21 14 views
5

Test sınıflarını ve test bağımlılıklarını içeren bir kavanoz (maven ile) nasıl oluşturabilirim?Bağımlılıklarla jar oluşturma VE sınama bağımlılıkları

'Ana' sınıflar için sınıflar ve bağımlılıklar için bağımlılıklar (derleme eklentisini kullanarak) içeren bir jar oluşturmayı biliyorum ancak test sınıflarına ve test bağımlılıklarına ihtiyacım var.

Test dersleri içeren bir kavanoz oluşturmak için jar eklentisini kullanabileceğimi biliyorum, ancak bu test bağımlılıklarını içermiyor.

TIA Muhtemelen maven-bağımlılık-eklentisi birleştirerek elde edebilirsiniz

cevap

1

: copyDependencies montaj eklenti ile.

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-dependency-plugin</artifactId> 
    <executions> 
    <execution> 
     <id>copy-dependencies</id> 
     <phase>process-resources</phase> 
     <goals> 
     <goal>copy-dependencies</goal> 
     </goals> 
     <configuration> <!-- by default all scopes are included --> 
     <!-- copy all deps to target/lib --> 
     <outputDirectory>${project.build.directory}/lib</outputDirectory> 
     </configuration> 
    </execution> 
    </executions> 
</plugin> 
<plugin> 
    <artifactId>maven-assembly-plugin</artifactId> 
    ... 
</plugin> 

Sizin açıklayıcısı:

<assembly> 
    <fileSets> 
    <fileSet> 
     <directory>${project.build.directory}/lib</directory> 
     <outputDirectory>/</outputDirectory> 
     <includes> 
     <include>*.*</include> 
     </includes> 
    </fileSet> 
    </fileSets> 
</assembly> 
+0

sayesinde bu Öke çalışır. Sınıflara ihtiyacım var, bu yüzden – thehpi

+0

paketinden açılma bağımlılıklarını kullanacağım, hoş geldiniz –

+0

Montaj eklentisini araştırdıktan sonra, biraz daha fazla ben scope = test ve unpack = true ile bir dependencySet'i tanımlayabildiğimi fark ettim. Bu aslında bağımlılık eklentisi ile aynı şeyi yapar. – thehpi