2014-04-11 58 views
0

目前,我正在開發的項目中包含Web服務的所有代碼,並且正在創建一個war和一個jar文件。Maven Source Plugin - 我如何生成只包含我想要包含的類的源代碼庫

Jar文件只包含其他項目共享的類的最低限度。
我沒有選擇在此時將共享類拆分爲單獨的核心項目。 (雖然我寧願)

我試圖把只將必要的java文件與源JAR:

Common_Model-1.1.2.jar 
Common_Model-1.1.2.jar-sources 

我在我的POM是這樣的:

<plugin> 
    <artifactId>maven-jar-plugin</artifactId> 
    <version>2.3.2</version> 
    <executions> 
     <execution> 
     <goals> 
      <goal>jar</goal> 
     </goals> 
     <configuration> 
      <includes> 
      <include>gov/app/api/common/models/**</include> 
      <include>gov/app/api/intra/models/**</include> 
      <include>gov/app/api/models/**</include> 
      </includes> 
      <finalName>Common_Model-1.1.2</finalName> 
     </configuration> 
     </execution> 
    </executions> 
</plugin> 
<plugin> 
    <artifactId>maven-source-plugin</artifactId> 
    <executions> 
     <execution> 
     <goals> 
      <goal>jar</goal> 
     </goals> 
     <configuration> 
      <includes> 
      <include>gov/app/api/common/models/**</include> 
      <include>gov/app/api/intra/models/**</include> 
      <include>gov/app/api/models/**</include> 
      </includes> 
      <finalName>Common_Model-1.1.2</finalName> 
     </configuration> 
     </execution> 
    </executions> 
</plugin> 

雖然這確實會創建sources jar,但它會忽略包含配置並添加整個項目中的所有.java文件。

我也嘗試過使用<excludes>,但這也被忽略。

回答

0

我在我的項目嘗試這樣做:

<include>com/sandbox/**/Permutations*</include> 

,所得Common_Model-1.1.2-sources.jar只有這一個文件,任命Permutations.java當我試圖

<include>com/sandbox/Permutations*</include> 
<include>com/sandbox/Sandbox*</include> 

該jar只有這兩個文件。所以你有什麼應該工作。我懷疑你的模式太寬泛了。

+0

我在maven-jar-plugin中使用了相同的模式。它在那裏工作,但不在maven-source-plugin中。 – ScrappyDev

+0

我也試過更具體,並使用相對於Project文件夾的路徑無濟於事。 – ScrappyDev

相關問題