我想在代码中使用类'javax.xml.stream.XMLOutputFactory'。 类(XMLOutputFactory)可以在多个库中使用,它们作为maven依赖项包含在内。 问题:类(XMLOutputFactory)从jar文件加载,而我期望从其他jar加载。 是否有任何解决方案可以从特定的jar文件中自定义类的加载。
答案 0 :(得分:2)
不是在java方面(或者可能通过实现新的类加载器,但这不是解决问题的合理方法)。
您应该只是在pom文件中排除不需要的依赖项(版本)。
答案 1 :(得分:1)
从maven 2.0.9开始,类路径是根据pom.xml中的依赖项声明生成的。
来自maven site:
请注意,如果两个依赖项版本在依赖关系树中处于相同的深度,那么直到Maven 2.0.8没有定义哪一个会赢,但是从Maven 2.0.9开始,它就是声明中的顺序:第一个宣言获胜。
因此,如果您在pom.xml中处理依赖项排序,则可以解决问题