linux环境下jar包部署运行问题 Exception in thread "main" java.lang.IllegalStateException: Failed to get nested

linux环境下,以jar文件部署如下:
1.准备好linux环境,安装所需要的jdk版本;
2.使用文件上传工具上传a.jar文件;
3.直接使用java -jar a.jar & 命令进行项目启动;
增量维护如下:
4.使用命令解压a.jar包,命令:jar -xvf a.jar;
5.与解压后的目录保持一致上传增量文件;
6.使用命令将指定文件更新到a.jar里面,
命令为jar -uvf0 a.jar 指定文件相对路径;重启即可;

遇到如下问题:

Exception in thread “main” java.lang.IllegalStateException: Failed to get nested archive for entry BOOT-INF/lib/spring-boot-starter-web-1.5.18.RELEASE.jar
at org.springframework.boot.loader.archive.JarFileArchive.getNestedArchive(JarFileArchive.java:109)
at org.springframework.boot.loader.archive.JarFileArchive.getNestedArchives(JarFileArchive.java:87)
at org.springframework.boot.loader.ExecutableArchiveLauncher.getClassPathArchives(ExecutableArchiveLauncher.java:72)
at org.springframework.boot.loader.Launcher.launch(Launcher.java:49)
at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)
Caused by: java.io.IOException: Unable to open nested jar file ‘BOOT-INF/lib/spring-boot-starter-web-1.5.18.RELEASE.jar’
at org.springframework.boot.loader.jar.JarFile.getNestedJarFile(JarFile.java:252)
at org.springframework.boot.loader.jar.JarFile.getNestedJarFile(JarFile.java:237)
at org.springframework.boot.loader.archive.JarFileArchive.getNestedArchive(JarFileArchive.java:104)
… 4 more
Caused by: java.lang.IllegalStateException: Unable to open nested entry ‘BOOT-INF/lib/spring-boot-starter-web-1.5.18.RELEASE.jar’. It has been compressed and nested jar files must be stored without compression. Please check the mechanism used to create your executable jar file
at org.springframework.boot.loader.jar.JarFile.createJarFileFromFileEntry(JarFile.java:285)
at org.springframework.boot.loader.jar.JarFile.createJarFileFromEntry(JarFile.java:260)
at org.springframework.boot.loader.jar.JarFile.getNestedJarFile(JarFile.java:248)
… 6 more

解决办法为:使用jar -uvf0命令进行增量替换

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值