代码之家  ›  专栏  ›  技术社区  ›  Ran Biron

如何关闭maven中的jar压缩

  •  10
  • Ran Biron  · 技术社区  · 15 年前

    Maven(2.0.9)中是否有选项可以关闭整个操作的JAR压缩?我在构建服务器和工作站中都使用Maven,我想在工作站构建中禁用JAR压缩(仅限开发)。但是,我不想触摸所有的pom,并为每个pom创建两个版本。

    是否有按环境变量、文件或触摸单个pom.xml关闭JAR压缩的选项?

    4 回复  |  直到 9 年前
        1
  •  1
  •   mikek    15 年前

    好吧,您可以通过概要文件定义不同的JAR插件。可以接受吗?

        2
  •  16
  •   Community CDub    11 年前

    显然,通过定义这一点是可能的:

     <profile><id>...</id>
       <build>
         <pluginManagement>
             <plugins>
                 <plugin>
                     <configuration>
                         <archive>
                             <compress>false</compress>
                        </archive>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
      </build>
    </profile>
    

    在顶级pom.xml中。 作为旁注,这并没有真正解决我最初的构建花费太多时间的问题。

        3
  •  11
  •   walter    15 年前

    将以下内容添加到项目的pom.xml文件的build.plugins部分。

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

    这将关闭Maven项目的JAR文件压缩。

        4
  •  1
  •   Lisandro López Villatoro    9 年前

    最后我找到了这个话题的答案( 关闭罐子压缩 )直接配置到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>