我有一个使用插件的小程序。我正在使用Java的X MLDecoder/Encoder内置系统来保存该程序的数据文件。我遇到的障碍是,当我使用XMLDecoder加载这些文件时,我收到一条消息,指出class is not in the classpath.

本质上,我为每个插件提供了一个类加载器,并且在正常执行期间,那些类加载器会创建这些类的新实例。所以我的问题是,如何轻松地将包含类路径的这些URL提供给XMLDecoder类加载器?

感谢您的帮助,

杰克

最佳答案

在某些情况下,您只需在实例化XMLDecoder时传递调用类的ClassLoader。

XMLDecoder decoder = new XMLDecoder(in, null, null, this.getClass().getClassLoader());

10-08 10:54