使用Maven进行第三方库的依赖性冲突

时间:2014-06-25 12:22:05

标签: java maven dom dependencies xerces

我在我的项目中使用Maven,并且我有一个使用Xerces的第三方库。在我的项目中,还有一些其他Maven模块在其依赖项中有一些其他XML库。 所以我的问题是,当我在依赖的maven项目中使用这个第三方库时,它工作正常。当我在项目的maven模块中使用它时会产生一些异常。

org.w3c.dom.ls.LSException: unknown protocol: c
    at com.sun.org.apache.xml.internal.serialize.DOMSerializerImpl.writeToURI(DOMSerializerImpl.java:1010)
    at generators.Generator.setConf(Generator.java:1567)

当我调试这两个项目时,我注意到在第二个项目中它实例化DOMSerializerImpl类形式com.sun.org.apache.xml.internal.serialize包,并在第一个包中使用org.apache.xml.serialize包。尽管在我的两个项目的pom文件中都指定了相同的依赖项。

这个派对库的依赖关系是:

    <dependency>
        <groupId>xml-resolver</groupId>
        <artifactId>xml-resolver</artifactId>
        <version>1.2</version>
    </dependency>
    <dependency>
        <groupId>xalan</groupId>
        <artifactId>serializer</artifactId>
        <version>2.7.1</version>
    </dependency>
    <dependency>
        <groupId>xerces</groupId>
        <artifactId>xercesImpl</artifactId>
        <version>2.11.0</version>
    </dependency>
    <dependency>
        <groupId>xerces</groupId>
        <artifactId>xercesSamples</artifactId>
        <version>2.2.1</version>
    </dependency>
    <dependency>
        <groupId>xml-apis</groupId>
        <artifactId>xml-apis</artifactId>
        <version>1.4.01</version>
    </dependency>

任何人都可以帮助我吗?

0 个答案:

没有答案