部署实战--修改jar中的文件并重新打包成jar文件

一.jar文件

  1. JAR 文件就是 Java Archive ( Java 档案文件),它是 Java 的一种文档格式
  2. JAR 文件与 ZIP 文件唯一的区别就是在 JAR 文件的内容中,多出了一个META-INF/MANIFEST.MF 文件
  3. META-INF/MANIFEST.MF 文件在生成 JAR 文件的时候自动创建的 (也可以自行创建)

二.问题触发场景

只有两个jar包,从一个jar里找出要修改的class文件生成新的jar包

三.操作步骤

  • 切换到要解压的jar包目录下,解压该文件
  • 生成jar包文件时自动创建的META-INF/MANIFEST.MF 文件
  • 找到解压后的class文件进行替换
  • 修改后重新打成包
  • 通过gui工具发现已修改

四.关键步骤

  • 此命令表示将修改后的BOOT-INF文件夹重新压缩到XXX.jar包中
java 复制代码
 jar -uvf0 XXX.jar BOOT-INF
  • 解压jar包(其中xxx.jar换成你的jar包名)
java 复制代码
jar -xvf xxx.jar
相关推荐
xexpertS1 小时前
队列积压治理:如何避免异步系统出现难以恢复的消息积压
java·开发语言
阿维的博客日记9 小时前
MultipartFile 是不是表示仅仅是一个分片?
java·后端·spring·multipartfile
程序员无隅10 小时前
Coding Agent 为什么压缩上下文后还能继续工作?上下文模块设计拆解
java·开发语言·数据库
Python+9910 小时前
Java 枚举类(Enum)详解:从基础到高级应用
java·开发语言·python
二炮手亮子10 小时前
浅记java线程池
java·开发语言
一路向北North10 小时前
Spring Security OAuth2.0(23):分布式系统授权-转发明文给微服务
java·spring·微服务
爱吃牛肉的大老虎12 小时前
rust基础之环境搭建
java·开发语言·rust
tellmewhoisi13 小时前
多版本共用redis的token有效期校验(过期重新登录)
java·redis·缓存
疯狂打码的少年13 小时前
【软件工程】结构化设计:模块独立性与耦合内聚
java·开发语言·笔记·软件工程
乐观的Terry13 小时前
3、数据库设计与领域实体
java·数据库·spring boot·spring cloud·ai编程