彻底解决IDEA Jrebel 错误找不到口令文件的问题

本来我的Jrebel也是好用的,突然就变成了这个样子,网上针对这个问题有很多帖子,但是每次新建项目后我都需要去解决一下这个问题,这我不能忍,经过一整天的百度和测试终于找到了原因并解决这个问题,伸手党直接滑倒页面底部总结即可

问题描述

当使用Jrebel启动Tomcat后(哪怕是空Tomcat)在控制台中会抛出如下异常:

彻底解决IDEA Jrebel 错误找不到口令文件的问题

经过分析日志可以看到控制台中项目名称的位置上包含乱码,复制乱码之前的路径打开资源管理器访问一下,看到如下命名:

彻底解决IDEA Jrebel 错误找不到口令文件的问题

打开目录后也可以找到Jrebel需要的文件,由此可知是Jrebel不能识别中文路径名而导致的异常

解决方案1

根据问题原因结合百度上的资料很轻松的就可以得到第一个解决方案:在Jrebel启动参数中加上UTF-8的中文字符支持即可

彻底解决IDEA Jrebel 错误找不到口令文件的问题

原作者地址:https://blog.csdn.net/weixin_44735433/article/details/107629493

解决方案2

启动支持了中文的Jrebel后的确不会报错,但是根据帖子的回复可以了解到,这种解决方案的弊端是Jrebel的Debug断点失效,经本人测试后的确代码走到断点后不会停住,我又去百度找新的解决方案,得知除了要让Jrebel支持中文后还需要在VM以及Tomcat中配置UTF8的编码:

彻底解决IDEA Jrebel 错误找不到口令文件的问题

彻底解决IDEA Jrebel 错误找不到口令文件的问题

原作者地址:https://blog.csdn.net/Wang__dream/article/details/108338746

换个方式思考

第二种解决方案我没有亲自测试过,不过并没有人回复会有其他的问题,所以我就把他粘到这里了

我没有测试第二种解放方案,是因为我一直在想为什么IDEA会将我纯英文的项目名称以及路径名称重命名为中文前缀,后来我突然意识到我安装了IDEA的中文插件,巧合的是上面出现该问题的两篇博客的博主也是都安装了中文插件,这样我就可以猜想是IDEA中文插件的间接导致了Jrebel的报错

之前在资源管理器中看到的中文命名,也在.idea → workspace.xml中找到了

彻底解决IDEA Jrebel 错误找不到口令文件的问题

假设成立!接下来我要进行实践了,首先将中文插件禁用(禁用就好,不用卸载),然后关闭IDEA编辑器,找到项目工作空间,删除以下三个文件:

彻底解决IDEA Jrebel 错误找不到口令文件的问题

删除后在重新打开IDEA然后打开该项目,然后重新添加Tomcat运行环境(Add Configuration),像平常那样直接添加就好不需要考虑字符集问题,添加Tomcat后在查看IDEA配置文件:

彻底解决IDEA Jrebel 错误找不到口令文件的问题

这里可以发现已经没有中文命名了,然后运行Tomcat进行最后的校验:

彻底解决IDEA Jrebel 错误找不到口令文件的问题

Tomcat启动成功!回到之前查看中文乱码的那个目录中查看文件命名:

彻底解决IDEA Jrebel 错误找不到口令文件的问题

果然是IDEA中文插件搞的鬼!问题解决!

总结

根据测试我总结出两个解决方案,第一种就是删除中文插件,删除工作空间的配置文件让IDEA重新生成,就可以解决问题

如果不想抛弃IDEA中文插件的话,可以在IDEA配置生成之后,手动到.idea → workspace.xml中将中文前缀删除掉,然后找到资源管理器中删掉中文前缀也可以解决该问题。

彻底解决IDEA Jrebel 错误找不到口令文件的问题

彻底解决IDEA Jrebel 错误找不到口令文件的问题

上一篇:树莓派 添加中文5G wifi


下一篇:King of Range