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

问题描述

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

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

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

解决方案1

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

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

解决方案2

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

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

换个方式思考

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

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

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

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

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

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

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

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

总结

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

如果不想抛弃IDEA中文插件的话,可以在IDEA配置生成之后,手动到.idea → workspace.xml中将中文前缀删除掉后重启Tomcat,Jrebel会根据删除中文前缀后的名称创建文件夹

彻底解决IDEA Jrebel 错误找不到口令文件的问题的更多相关文章

  1. 解决android studiogradle 错误 找不到程序包 符号

    问题:android studio gradle 错误 找不到程序包 符号解决:原因是library工程的build.gradle含有release,只要把其注释即可 buildTypes { rel ...

  2. 解决Cocos2d-x编译错误: 无法打开 源 文件 "extensions/ExtensionExport.h"

    #include "base/ccMacros.h"

  3. ubuntu下安装jdk(rpm版)错误: 找不到或无法加载主类 解决方法

    1.官网下载jdk,linux64位,rpm格式的. 2.提取下载的文件,提取到一个目录下,我的是提取到了usr目录下了 3.终端输入:sudo gedit ~/.bashrc 会打开一个文本,在文本 ...

  4. Swift: 使用cocoapods进行单元测试找不到bridge_header文件

    准备对项目进行单元测试,在 command + U 运行时出现了错误找不到桥接文件,如下图所示. 找了各种资料,终于解决了,如下图,可以发现search path中路径都为空,由于unit test是 ...

  5. Android studio中找不到so文件的问题:java.lang.UnsatisfiedLinkError

    解决Android studio中找不到so文件的问题:java.lang.UnsatisfiedLinkError 表示我们不编译jni代码,直接从libs里面复制so库 文件路径:app\buil ...

  6. http://localhost/certsrv 错误找不到页面解决方法

    http://localhost/certsrv 错误找不到页面解决方法 最近公司需要后台启动安全证书,可安装了“Active Directory证书服务” 后,http://localhost/ce ...

  7. Eclipse无法编译,提示错误“找不到或者无法加载主类”解决方法

    jar包问题: 1.项目的Java Build Path中的Libraries中有个jar包的Source attachment指为了一个不可用的jar包, 解决办法是:将这个不可用的jar包remo ...

  8. 解决Android studio生成H文件时报找不到类文件错误

    今天整理思路时觉得在native直接调用java的方法显示这个办法挺不错 于是就用到了生成H文件 可能我的编译环境和他们的不一样 网上的教程如下 javah -d ../jni com.jm.prom ...

  9. mac 下 使用 java运行 class 文件 总是提示 “错误: 找不到或无法加载主类”的解决方法

    发现问题 切换到mac平台后,突然想写点程序运行在mac下,想到mac自带java,会方便好多.不过在这过程中遇到了麻烦: 总是提示 “错误: 找不到或无法加载主类” 工程结构 查了好久,终于找到原型 ...

  10. IDEA错误: 找不到或无法加载主类 com.xxx.freight.dofreight.doFreight解决办法

    1.右键点击工程,选择open Module Settings或点击File选择Project Structure,进入页面 2.选择Artifacts->JAR->From module ...

随机推荐

  1. dotnet 6 修复找不到 EnumeratorToEnumVariantMarshaler 问题

    我将在一个 .NET Framework 项目升级到 dotnet 6 时发现构建不通过,因为原先的代码使用到了 EnumeratorToEnumVariantMarshaler 类型,在 dotne ...

  2. IIncrementalGenerator 判断程序集的引用关系

    本文将告诉大家如何在 IIncrementalGenerator 增量 Source Generator 生成代码里面,在 Roslyn 分析器里面判断两个程序集是否存在引用关系 先上核心代码实现,核 ...

  3. SQL server 自定义工资公式设计

    目的: 工资系统中,在计算各工资项目的时候,用户能自定义公式.这里的讲述是从数据库方设计方面考虑,做简要的数据模拟和实体.存储过程的设计. 收集数据: 1.Employee员工信息数据(Employe ...

  4. 7.prometheus监控--监控docker

    4.监控docker 为了能够获取到Docker容器的运行状态,用户可以通过Docker的stats命令获取到当前主机上运行容器的统计信息,可以查看容器的CPU利用率.内存使用量.网络IO总量以及磁盘 ...

  5. GeoHash实现附近的人功能(如微信附近的人、共享单车附近的车辆、美团附近的商家)

    如何查找当前点(118.818747°E,32.074497°N)附近500米的人? 这一类功能很常见(如微信附近的人.共享单车附近的车辆.美团附近的商家),那在java中是如何实 现的呢? 1 实现 ...

  6. webapi授权认证

    webapi授权认证 一.需要类包 Microsoft.AspNetCore.Authentication.JwtBearer 二.相关名词 Authentication(认证):标识用户的身份,一般 ...

  7. CF522D Closest Equals 离线扫描 + 线段树

    CF522D Closest Equals 题意:m 个询问,求 [l,r] 内相同元素的最小距离. 离线询问,按右端点排序. 对于每一个 a[i],如果 last[a[i]] 存在,将线段树 las ...

  8. SAP Adobe Form 教程三 日期,时间,floating field

    前文: SAP Adobe Form 教程一 简单示例 SAP Adobe Form 教程二 表 原文标题:SAP Adobe Interactive Form Tutorial. Part III. ...

  9. vueJs开发音乐播放器第二篇(点击歌单跳出详情页)

    继上一篇开发音乐播放器歌单列表页 (1.使用router定义跳转链接,2. 使用axios得到音乐第三方数据,并渲染到页面上,3.组件之间传值(props)) 1.接下来使用了vue-router路由 ...

  10. DB2 关联更新

    update GIS_TER_ADDRESS_MSG set (POS_X,POS_Y)=(select LAT,LON from TEMP_ATM where GIS_TER_ADDRESS_MSG ...