Sli*_*mer 2 java jar classpath serviceloader
我在我的项目中实现这个逻辑时遇到问题。我正在使用 ServiceLoader,我不知道或者它是否可能,但我想将 JAR 动态添加到应用程序的某个已知目录中,以便应用程序可以在启动时加载它们。我唯一取得的成就是我知道如何创建可扩展的 ONE JAR(使用 META-INF/服务),因此我可以向这个 JAR 添加越来越多的提供者和类(实现)。JAR 像普通库一样包含在类路径中,因此应用程序知道它。我想要实现的目标:我不想扩展一个 jar 文件,但我想通过添加更多 jar 来扩展应用程序,例如带有提供程序(服务)的插件,但我不知道如何。
感谢帮助!
您只需要 (a) 使用这些目录中所有 JAR 文件的 URL 构造的 URLClassLoader,以及 (b) 调用ServiceLoader.load(Class service, ClassLoader loader)。
| 归档时间: |
|
| 查看次数: |
2842 次 |
| 最近记录: |