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

升级Saxon API至10.5.1.0版本后遭遇IKVM.OpenJDK.Security程序集加载失败问题求助

解决Saxon API升级后IKVM程序集加载失败的问题

这个报错是Saxon版本跨大升级后典型的依赖不匹配问题——Saxon 9.7依赖的IKVM版本和10.5完全不兼容,旧版的IKVM.OpenJDK.Security(8.1.5717.0)已经满足不了新版本的要求了。下面给你几个实用的解决步骤:

  • 彻底清理旧IKVM引用
    先把项目里所有和旧版IKVM相关的内容删掉:包括NuGet包里的IKVM组件、手动添加的IKVM程序集引用,还有配置文件里相关的绑定重定向。旧版本的IKVM和Saxon 10.5完全冲突,留着只会添乱。

  • 重新安装Saxon 10.5官方NuGet包
    别再手动复制程序集了,直接通过NuGet安装官方的Saxon包(比如Saxon-HE,如果是商业版就装对应版本)。官方包会自动引入匹配版本的IKVM依赖,确保所有必要组件都到位,版本也不会错。

  • 检查并修正程序集绑定重定向
    打开项目的App.config或Web.config,如果里面有指向IKVM.OpenJDK.Security, Version=8.1.5717.0的绑定重定向,要么把版本号改成Saxon 10.5实际依赖的IKVM版本(可以在NuGet包的依赖列表里查到),要么直接删掉这条重定向——官方NuGet包会自动生成正确的配置。

  • 验证输出目录的程序集完整性
    构建项目后,去输出文件夹(比如bin/Debug)里确认一下:Saxon 10.5需要的IKVM相关程序集是不是都在。如果有缺失,右键对应的引用,把“复制本地”改成True,确保构建时能把依赖组件复制过去。

  • 处理跨组件依赖冲突
    如果你的项目里还有其他组件依赖旧版IKVM,那要么升级那些组件到兼容Saxon 10.5的版本,要么用绑定重定向来隔离不同版本的IKVM,避免互相干扰。

另外你提到的代码行_healthCheckServiceHost = new WebServiceHost(new NancyWcfGenericService(), new Uri(httpEndPoint));本身是WCF服务初始化,但报错出在IKVM加载上,说明这个NancyWcfGenericService内部肯定调用了升级后的Saxon组件,所以核心还是解决依赖版本不匹配的问题。

内容的提问来源于stack exchange,提问作者Dipak Shinde

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 06:29:09