背景
我发布项目的是nacos的命名空间写错了,重写打包微服务比较浪费时间,想直接修改jar中的配置文件。
一、安装 zip/unzip
sudo yum install unzip
sudo yum install zip
二、使用vim命令修改jar
vim xxx.jar
三、快速定位资源
类型搜索:
使用 /
命令,后面跟上要搜索的内容进行类型搜索。例如,要搜索文本中的单词 "example",可以执行以下命令:
/bootstrap-dev.yaml
搜索将会定位到第一个匹配项,并高亮显示。可以使用 n
键继续向下搜索下一个匹配项,使用 N
键向上搜索上一个匹配项。
四、踩坑
直接在Windows用360解压缩后修改后,再进行压缩,压缩后将文件后缀从zip改为jar,第一次文件目录搞错,第二次目录对了但依然报错,意识到可能压缩方式不同。报错如下:
Exception in thread "main" java.lang.IllegalStateException: Failed to get nested archive for entry BOOT-INF/lib/DmJdbcDriver18-8.1.2.141.jar
...
Caused by: java.io.IOException: Unable to open nested jar file 'BOOT-INF/lib/DmJdbcDriver18-8.1.2.141.jar'
...
Caused by: java.lang.IllegalStateException: Unable to open nested entry 'BOOT-INF/lib/DmJdbcDriver18-8.1.2.141.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