springboot打jar的注意问题

众所周知springboot内嵌了tomcat,既可以直接以运行jar包的形式启动,也可以打成war包放在tomcat下运行。平常开发中主要放在tomcat下运行,并没出现过什么启动异常问题。偶尔也会使用main方法启动,也都正常。但是在一次上线中发现原来是以jar包运行,故也打jar包运行,但是却遇到不少问题,过程曲折,记录下。

修改pom.xml

  <packaging>jar</packaging>

执行clean package ,可以执行成功

执行java -jar *-1.0.0.jar

发现启动异常,提示缺少class,检查发现缺少一个jar包,直接用winRAR打开将jar放进去,再次执行java -jar *-1.0.0.jar

发现仍然启动不了,大概是说这种直接放jar进去的方式不可取,再次查看pom.xml中发现引用到本地jar包

<dependency>

           <groupId>com.eps.api</groupId>

           <artifactId>api</artifactId>

           <version>0.0.1</version>

           <scope>system</scope>

           <systemPath>${project.basedir}/lib/*.jar</systemPath>

       </dependency>

于是修改pom.xml配置

<plugin>

              <groupId>org.springframework.boot</groupId>

              <artifactId>spring-boot-maven-plugin</artifactId>

                <configuration>

                    <includeSystemScope>true</includeSystemScope>

                </configuration>

           </plugin>

增加includeSystemScope 配置,再次打包成功,运行成功

于是很好奇去看看这个jar打进去是什么样的,发现并没有

反编译整个jar包,最后发现

打包之后对原始jar包进行了重命名,格式为:groupId-artifactId-version.jar

至此才恍然大悟

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值