2009-06-23 35 views
8

在Maven(2.0.9)中是否有一個選項可以關閉整個操作的jar壓縮?我在構建服務器和工作站中都使用Maven,並且希望在工作站構建中禁用jar壓縮(僅限開發)。但是,我不想觸碰所有的poms,併爲每個poms創建兩個版本。如何在Maven中關閉jar壓縮

是否有一個選項可以通過環境變量,文件或通過觸摸單個pom.xml關閉jar壓縮?

回答

1

那麼,你可以通過配置文件定義不同的jar插件。這可以接受嗎?

+0

怎麼樣?它可以在頂層的pom.xml中完成嗎? – 2009-06-23 14:11:41

+0

@Ran Biron:我不完全確定,但正如您所知,您可以根據個人資料重新定義插件。我已經在多層次的POM項目上做了很少的工作來測試是否將配置文件選擇傳遞給子poms,但我可以很好的想象它可能是這樣的。我會自己測試一下,但現在是離開辦公室的時候了=) – mikek 2009-06-23 14:37:55

+0

查看我自己的答案瞭解詳情。謝謝。 – 2009-06-23 14:39:25

15

顯然,它是可以通過定義如下:

<profile><id>...</id> 
    <build> 
    <pluginManagement> 
     <plugins> 
      <plugin> 
       <configuration> 
        <archive> 
         <compress>false</compress> 
        </archive> 
       </configuration> 
      </plugin> 
     </plugins> 
    </pluginManagement> 
    </build> 
</profile> 
在頂層的pom.xml

。作爲一個方面說明 - 這並沒有真正解決我的建設花費太多時間的最初問題。

10

將以下內容添加到項目的pom.xml文件中的build.plugins部分。

<plugin> 
    <artifactId>maven-jar-plugin</artifactId> 
    <version>2.2</version> 
    <configuration> 
     <archive> 
      <compress>false</compress> 
     </archive> 
    </configuration> 
</plugin> 

這會關閉您的maven項目的jar文件壓縮。

1

終於讓我找到這個題目的答案(轉開瓶蓋壓縮),直接配置到POM,我也發現了另外兩個有趣的細節:把一個不同的JAR的名字包括「清單」的定義。這是我的pom片段。

<build> 
    <finalName>***FileName***</finalName> 

    <plugins> 

     <!-- Set a JDK compiler level --> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>2.3.2</version> 
      <configuration> 
       <source>${jdk.version}</source> 
       <target>${jdk.version}</target> 
      </configuration> 
     </plugin> 

     <!-- Make this jar executable --> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-jar-plugin</artifactId> 
      <configuration> 
       <archive> 
       <manifest> 
        <!-- Jar file entry point --> 
        <mainClass>***package.test.ClassTest***</mainClass> 
       </manifest> 
       <compress>***false***</compress> 
       </archive> 
      </configuration> 
     </plugin> 

    </plugins> 
</build> 
相關問題