You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级Jsoup至1.15.3后出现NoClassDefFoundError,寻求解决版本

问题原因及解决方案

出现NoClassDefFoundError: org/jsoup/safety/Whitelist是因为Jsoup从1.14.0版本开始,将Whitelist类重命名为SafeList,1.15.3版本已经彻底移除了旧的Whitelist类,你的代码(或依赖的第三方库)还在引用这个已被移除的类,所以报错。

你有两个可行的解决方向:

  • 回退到兼容旧API的Jsoup版本:选择1.13.1及更低版本,这些版本中Whitelist类仍然存在,直接修改pom.xml里的依赖版本即可:

    <dependency>
        <groupId>org.jsoup</groupId>
        <artifactId>jsoup</artifactId>
        <version>1.13.1</version>
    </dependency>
    

    这个方案不需要修改代码,适合快速解决问题,但会错过1.14.0及以后版本的安全更新和功能改进。

  • 修改代码适配新版本API:把代码中所有引用org.jsoup.safety.Whitelist的地方替换为org.jsoup.safety.SafeList,两者的核心API用法完全一致,比如:
    原来的代码:

    Whitelist whitelist = Whitelist.basic();
    

    修改后:

    SafeList safeList = SafeList.basic();
    

    这个方案可以让你继续使用1.15.3及后续的Jsoup版本,获得最新的安全修复。如果项目中有依赖的第三方库仍在使用Whitelist,则需要等待该库升级适配,或者暂时回退Jsoup版本。

内容的提问来源于stack exchange,提问作者Sekhar T

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 10:25:25