windows10系统下替换、修改jar中的文件并重新打包成jar文件然后运行

目录

1、jar文件简述

JAR 文件就是 Java Archive ( Java 档案文件),它是 Java 的一种文档格式。 JAR 文件非常类似 ZIP 文件。准确的说,它就是 ZIP 文件,所以叫它文件包。JAR 文件与 ZIP 文件唯一的区别就是在 JAR 文件的内容中,多出了一个META-INF/MANIFEST.MF 文件,这个文件是在生成 JAR 文件的时候自动创建的 (也可以自行创建)。

2、问题来源

直接复制粘贴替换打包好的jar包里对应lib包下的一些包,然后通过java -jar启动项目报错。

3、操作步骤

3.1 解压jar包

首先,在要操作的jar文件上边cmd打开命令提示符窗口,(也可以打开命令行cd进入到 jar包 所在的目录)

在cmd命令下执行 jar -xvf xxx.jar 解压jar包(其中xxx.jar换成你的jar包名)

命令如下:

powershell 复制代码
jar -xvf marriage-admin-1.0.0.jar

结果示例:

3.2 替换或者更改操作

  • 需求1:替换文件

    如果要替换jar压缩文件里lib下的jar包,在BOOT-INF的lib文件夹下直接粘贴替换即可。

  • 需求2:

    假如要修改配置文件

    修改 BOOT-INF\classes\application-test.yml 中的数据库连接 url: jdbc:mysql://127.0.0.1:3306/(原来是 jdbc:mysql://192.192.192.55:3306),并把连接测试环境数据库账号和密码改成本地连接的账号和密码保存。

3.3 重新打成jar包

命令:

powershell 复制代码
jar -uvf0 marriage-admin-1.0.0.jar.jar BOOT-INF

然后回到cmd命令中执行 jar -uvf0 iotp-adss-V1.0.0.3.jar BOOT-INF

此命令表示将修改后的BOOT-INF文件夹重新压缩到iotp-adss-V1.0.0.3.jar包中。

3.4 确认是否修改成功

再使用解压工具打开 jar包,查看替换的文件是否替换了,或者修改配置的端口确实改好了(也可以解压后看),如下图所示:

3.5 运行程序

在Windows系统下运行 jar 包程序。

命令:

powershell 复制代码
java -jar iotp-adss-V1.0.0.3.jar

jar 包成功运行。

注意:如果不报错下边就不用看了,到此结束,如果报错,看下边。

如果你的报错,可以试试重新打成jar包时用这个指令jar -cfM0 ../xxx.jar ./,重点是cfM0指令------如果用普通指令 jar -cvf xxx.jar ./ 或winrar压缩工具会导致内部的jar文件会被二次压缩 ,导致重新打包后的jar无法正常运行,而cfM0指令可以防止打包的过程中将文件二 次压缩。

附录:常见命令参数

本文到此结束,如有不足之处,欢迎批评指正。

相关推荐
z人间防沉迷k3 小时前
后端开发概念
java·后端
caihuayuan53 小时前
Vue3响应式数据: 深入分析Ref与Reactive
java·大数据·spring boot·后端·课程设计
CodeWithMe4 小时前
【C/C++】线程状态以及转换
java·c语言·c++
苹果酱05674 小时前
Java设计模式:探索编程背后的哲学
java·vue.js·spring boot·mysql·课程设计
biubiubiu07064 小时前
windows中JDK切换版本
java·开发语言
qq_334060216 小时前
spring5-配外部文件-spEL-工厂bean-FactoryBean-注解配bean
java·spring·web
Uranus^6 小时前
使用Spring Boot和Spring Security结合JWT实现安全的RESTful API
java·spring boot·spring security·jwt·restful api
FAQEW6 小时前
介绍一下什么是反射(面试题详细讲解)
java·开发语言·反射
是三好7 小时前
并发容器(Collections)
java·多线程·juc
jian110587 小时前
java项目实战、pom.xml配置解释、pojo 普通java对象
java·开发语言·python