Springboot2.x——maven插件打成可以执行的Jar包

SpringBoot 专栏收录该内容
13 篇文章 0 订阅

一、springmvc需要打成War通过nginx或者tomcat发布,而springboot内嵌tomcat等容器,可以打成Jar直接执行运行,比较方便

jar包里面包含了编译后的类和所有依赖的jar

1、pom配置:

pom文件中添加:若没有该配置默认打包成jar包

<packaging>jar</packaging>

maven相关配置:

<build>
   <!--指定打成jar包之后的包名-->
   <finalName>wx-springboot-jdbc</finalName>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
                <!-- 指定jdk源代码版本 指定编译后class版本,指定编码类型 -->
                <source>1.8</source>
                <target>1.8</target>
                <encoding>UTF-8</encoding>
            </configuration>
        </plugin>
    </plugins>
</build>

重新打包指定主程序入口:详细的可以参考官方文档:

https://docs.spring.io/spring-boot/docs/2.2.0.RELEASE/maven-plugin/usage.html

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
      <mainClass>com.wuxi.UserApplication</mainClass>
      <layout>ZIP</layout>
    </configuration>
    <executions>
        <execution>
            <goals>
                <goal>repackage</goal>
            </goals>
        </execution>
    </executions>
</plugin>

2、在idea中执行package命令:也可以使用 mvn package

 

进入该jar目录执行:

浏览器访问测试下ok

 

3、解压jar查看以下目录结构:

上面打包可以看到还生成了wx-springboot-jdbc.jar.original文件,.original默认情况下不可执行,这是重新打包前的原始jar文件

 

BOOT-INF:classes包含编译好的类,lib包含依赖的jar包:(引用了jdbc等)

META-INF目录:包含了运行jar包的一些配置信息把:

打开META-INF/MANIFEST.MF文件可以看到:该jar包的一些信息

Manifest-Version: 1.0
Implementation-Title: springboot-jdbc
Implementation-Version: 0.0.1-SNAPSHOT
Start-Class: com.wuxi.UserApplication
Spring-Boot-Classes: BOOT-INF/classes/
Spring-Boot-Lib: BOOT-INF/lib/
Build-Jdk-Spec: 1.8
Spring-Boot-Version: 2.2.0.RELEASE
Created-By: Maven Archiver 3.4.0
Main-Class: org.springframework.boot.loader.PropertiesLauncher

org目录:看起来是环境的一些内容

 

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: Age of Ai 设计师:meimeiellie 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值