我在使用.NET版Saxon-HE时遇到了问题。我们有一个引用Saxon-HE 9.7.0.7的.NET Core项目。如果我尝试运行以下代码:
private static readonly Processor Processor = new Processor();
它为ClassNotFoundException
提供了cli.System.Xml.XmlDocument
。
这是完整的错误消息:
ClassNotFoundException:cli.System.Xml.XmlDocument at IKVM.NativeCode.ikvm.runtime.AssemblyClassLoader.LoadClass(对象 classLoader,Assembly assembly,String name)
即使我制作一个针对.NET 4.6.1的blanco ConsoleApplication并在该项目中引用Saxon,它也会给我ClassNotFoundException
。
我已经尝试清理包缓存,我尝试重新安装Java。
其他人遇到过这个问题吗?这是一个已知的问题吗?我该怎么做才能解决它?
谢谢!
答案 0 :(得分:0)
我不知道您是否使用过SaxonHE9-7-0-7N-setup.exe
安装程序或NuGet包。我更喜欢后者。
如doc中所述,项目中的saxon9he-api
引用需要Saxon库(saxon9he.dll
),IKVM交叉编译器(IKVM.Runtime.dll
)和十字架编译Java OpenJDK类库(IKVM.OpenJDK.*.dll
)。您可能缺少某些依赖项。
IKVM.NativeCode.ikvm.runtime.AssemblyClassLoader
位于IKVM.Runtime.dll
。
答案 1 :(得分:0)
我担心坏消息是IKVMC的首席开发人员Jeroen Frijters告诉我们,目前IKVMC目前不支持.NET Core作为目标平台,并且支持它是很多工作并赢得了'很快就会发生。 Saxon on .NET完全依赖于IKVMC,因此不支持此平台。