我已经使用.net将用Java语言编写的应用程序接口转换为IKVM,到目前为止,效果还不错。
它基本上是在幕后使用xml来访问一些web服务。api是第三方的,我没有访问源代码的权限。api使用Castor (我相信)将xml绑定到对象中。
但是,当我开始使用api中一些更有用的部分时,我遇到了castor的问题。我的具体错误是:
“嵌套错误: org.exolab.castor.mapping.MappingException:找不到类...”
提到的类是api的一部分。通过搜索web,可以发现castor不能访问这个类,因为它位于独立于castor的程序集中。
我的问题是,我对Java中的Classloader了解得不够多,可能对IKVM也没有足够的了解来解决这个问题。
有没有人使用过带有Castor的IKVM (或者其他一些可能使用Java反射类的库),并且以前遇到过这个问题?
发布于 2009-05-21 11:39:28
嗯,我很惊讶没有人对此有任何答案,所以我把我的问题贴到了ikvm邮件列表上,并得到了回复。
答案确实与Castor库和我使用的第三方api代码的分离有关。
我使用的解决方案是添加选项:
-classloader:ikvm.runtime.AppDomainAssemblyClassLoader使用ikvmc编译Castor时。
这允许Castor与第三部分api通信,并允许我从web服务获取报告。
https://stackoverflow.com/questions/883736
复制相似问题