通过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是需要的参数

猜你喜欢

转载自blog.csdn.net/loy_184548/article/details/80003534