我想覆盖那里的 META-INF/服务,它可以在没有 jar 的情况下工作吗?
最佳答案
是的,您可以在没有 jar 文件的情况下使用 META-INF/services
。至少根据我的测试(Java 6)是这样的。
所有jar文件的META-INF
目录和类路径中的所有目录都可以独立扫描,因此从技术上讲,这样的META-INF
文件不会覆盖来自另一个 jar 文件的文件,但是(取决于加载器机制)其中一个文件(类加载器之一的资源)中的条目可能比其他文件具有优先级,因此实际上您可以重载条目。正如您已经发现的,这样的情况之一是 javax.xml.datatype.FactoryFinder
(我不知道)。
关于java - META-INF 可以在分解的类文件夹中使用(例如不在 JAR 中)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5447839/