替换Jar包依赖的方式

568 阅读1分钟

Java的可执行jar包会将其所有的依赖第三方jar包一并打包进去,但是有时候我们可能需要将其中的的某个依赖jar包换一个版本,或者换一种操作系统架构版本的jar(一些用JNI调用了操作系统本地库的)。总之你需要替换一个jar包。

方式1

在有解压缩软件时,可以很方便的预览查看或者替换war/jar或者压缩归档文件中的文件,但是需要注意一个点,那就是替换文件时的压缩级别一定要选择不压缩,否则在运行jar包时替换依赖的相关类在进行加载的时候就会报找不到类的错误。

图片.png

上图是以bandzip来截图的示例,如果解压缩软件没有找到这个功能或者没有解压缩软件就用下面的方法2.

方法2

  1. 在jar包所在的文件夹打开命令行终端,执行:jar -xf **.jar
  2. 然后jar包的同级目录中会多出一些目录(spring boot项目打包的就会多出BOOT-INF、META-INF、org三个目录),这些目录就是jar包里面的目录,然后接下来就是找到要替换的依赖jar包在哪个目录,将其替换掉。
  3. 在终端中继续执行命令jar -cf0M **.jar ./BOOT-INF/ ./META-INF/ ./org/ **.jar换成原本的jar包名字,后面的目录枚举就是解压出来的目录,记得改为与你自己解压出来的目录名保持一致。