Java通过Maven打可执行jar包

Posted 宣之于口

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java通过Maven打可执行jar包相关的知识,希望对你有一定的参考价值。

通过Maven打可执行jar包

方法:利用maven-shade-plugin : 用于把多个jar包,打成1个jar包

  1. 首先工程中需要有一个包含main函数类
  2. 修改maven 的 pom.xml 文件
<build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-shade-plugin</artifactId>
        <version>2.3</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
            <configuration>
                <transformers>
                    <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                    // Main文件,例如cn.chain.ang.app.Main
                    <mainClass>xxx.Main</mainClass>
              </transformer>
                <filters>
                <filter>
                    // 在构建jar包时将META-INF目录下的SF、DSA、RSA文件排除在外,即不会包含在jar包里面。
                  <artifact>*:*</artifact>
                  <excludes>
                    <exclude>META-INF/*.SF</exclude>
                    <exclude>META-INF/*.DSA</exclude>
                    <exclude>META-INF/*.RSA</exclude>
                  </excludes>
                </filter>
              </filters>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
</build>

3 . 执行 package

在项目根目录下执行 mvn package -DskipTests 后面这个参数表示跳过测试
==> 然后在target文件夹下面可以看到两个jar包
a. original-Anglet-1.0-SNAPSHOT.jar // 不带依赖
b. Anglet-1.0-SNAPSHOT.jar //带依赖

4 . 运行 jar

java -jar xx.jar
如果需要参数:则为 java -jar xx.jar arg arg是需要的参数

以上是关于Java通过Maven打可执行jar包的主要内容,如果未能解决你的问题,请参考以下文章

Gradle 打可执行jar包

IDEA 打可执行jar包(maven项目)

maven javaproject工程打可执行jar包

maven javaproject工程打可执行jar包

Java jar命令打可执行的jar包

Maven打可执行包的pom.xml配置