2014-04-15 60 views
0

我使用maven-assembly-plugin從maven模塊創建單個jar。 這裏是assembly.xml:從maven程序集中的目標單個jar中排除第三方依賴關係

<assembly 
xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd"> 
<id>all-jar</id> 
<formats> 
    <format>jar</format> 
</formats> 

<includeBaseDirectory>false</includeBaseDirectory> 

<dependencySets> 
    <dependencySet> 
     <unpack>true</unpack> 
     <useTransitiveDependencies>false</useTransitiveDependencies> 
     <unpackOptions> 
      <excludes> 
       <exclude>**/resources</exclude> 
       <exclude>xsom:xsom</exclude> 
      </excludes> 
     </unpackOptions> 
    </dependencySet> 
</dependencySets> 

我在我的模塊中的一個使用第三部分罐子。雖然我放入排除列表中,但這個第三方jar也是解壓縮的,並沒有被排除。我如何從開箱中排除它?實際上,我只想將模塊的資源文件夾解壓縮,其他java源可以保持打包狀態。

回答

0

你需要把exclude標籤的unpack選項之外:

<dependencySets> 
    <dependencySet> 
     <unpack>true</unpack> 
     <useTransitiveDependencies>false</useTransitiveDependencies> 
     <excludes> 
      <exclude>xsom:xsom</exclude> 
     </excludes> 
     <unpackOptions> 
      <excludes> 
       <exclude>**/resources</exclude> 
      </excludes> 
     </unpackOptions> 
    </dependencySet> 
</dependencySets> 

如果使用排除unpackOptions,您排除被解壓的內容。

相關問題