IntelliJ IDEA 2022.2.3中Jetty Runner插件1.4.20版本报错求助
解决Jetty Runner插件在IntelliJ IDEA 2022.2.3中的getId方法废弃错误
错误原因
IDEA 2022.x版本对ConfigurationFactory类的getId()方法提出了强制要求:必须显式重写该方法,不能使用默认实现。默认实现会调用getName(),而getName()可能包含本地化文本,这会导致运行配置的存储和识别出现问题。Jetty Runner 1.4.20版本未适配这个新规则,因此触发了该异常。
可行解决方案
1. 等待插件官方更新
直接向插件代码仓库提交Issue,告知开发者该兼容性问题,等待发布修复后的新版本即可。
2. 手动修改插件源码并重新打包
具备Java开发能力的话,可以自行修复:
- 克隆Jetty Runner插件的源码仓库
- 定位到
com.github.guikeller.jettyrunner.conf.JettyRunnerConfigurationFactory类 - 添加
getId()方法的重写实现,返回固定的非本地化字符串,示例代码:import org.jetbrains.annotations.NotNull; // 在类中添加如下方法 @NotNull @Override public String getId() { return "JettyRunnerConfiguration"; } - 使用Maven或Gradle重新打包插件,通过
File > Settings > Plugins > Install Plugin from Disk...将生成的jar包手动安装到IDEA中
3. 降级IntelliJ IDEA版本
如果暂时不想折腾,可以将IDEA降级到2021.x或更早的版本,这些版本尚未强制要求重写getId()方法,Jetty Runner 1.4.20可以正常运行。
内容的提问来源于stack exchange,提问作者gesanri
相关产品推荐
相关产品推荐

