2010-10-29 77 views
4

我遇到過這種情況,使用maven打包一個項目時,我喜歡源包和二進制包,它們都有相同的manifest.mf文件。然後,我必須寫在Maven的源插件和Maven-JAR-插件,兩者插件配置相同的條目是這樣的:如何從Maven的pom.xml中刪除重複的內容?

 
     <plugins> 
      <plugin> 
       <artifactId>maven-source-plugin</artifactId> 
       <executions> 
        <execution> 
         <id>attach-sources</id> 
         <goals> 
          <goal>jar</goal> 
         </goals> 
        </execution> 
       </executions> 
       <configuration> 
        <archive> 
         <manifestEntries> 
          <Artifiact>${project.name}</Artifiact> 
          <Version>${project.version}</Version> 
          <Vendor>${project.organization.name}</Vendor> 
          <Built-By>Shiva Wu</Built-By> 
         </manifestEntries> 
        </archive> 
       </configuration> 
      </plugin> 
      <plugin> 
       <artifactId>maven-jar-plugin</artifactId> 
       <configuration> 
        <archive> 
         <addMavenDescriptor>false</addMavenDescriptor> 
         <manifestEntries> 
          <Artifiact>${project.name}</Artifiact> 
          <Version>${project.version}</Version> 
          <Vendor>${project.organization.name}</Vendor> 
          <Built-By>Shiva Wu</Built-By> 
         </manifestEntries> 
        </archive> 
       </configuration> 
      </plugin> 
     </plugins> 
    


這真的不是方便而更改設置來修改他們兩個。有沒有更好的方法來解決這個問題?

謝謝:)

回答

0

沒有更好的辦法來處理它比你在做什麼。

雖然有一些額外的東西。您可以將這些配置粘貼到插件管理部分中的可重複使用的「公司」或「標準」父POM中,然後您不必在其他任何pom中再次指定它們。看到這裏的細節:

Best way to share portions of a Maven pom.xml across unrelated projects?

我注意到的另一件事是,你個人的名稱應與應該從settings.xml文件中設定的變量來代替。這將有助於增加構建的可移植性。