概述
Java11 引用 org.w3c.dom 时报错The package org.w3c.dom is accessible from more than one module: , java.xml 的解决方法
运行环境
IDE:Eclipse 2021-12
JDK:jdk-11.0.14.101-hotspot
Maven项目
原因
在Java9或者更高版本中,相同的包名不能在多个模组之中,而org.w3c.dom包已经包含在系统的库中,所以有其他依赖库中包含org.w3c.dom时会报出这个错误。
解决方法
解决方法是将包含org.w3c.dom的库删去,或者用exclusion的方式将部分包删去。
首先我们需要全局搜索项目中名为org.w3c.dom的Package,Limit To选择Declarations。
这时候我们发现:
在jaxen-1.1.6.jar中包含了这个包。如果我们在pom.xml中并没有引入同样名字的包,又是怎么回事呢?这个情况下,可能是我们在pom中引入的包的子包中引入了jaxen。
这时候,我们需要定位这个包在哪一个引用里面。在项目目录下使用命令行 maven dependency:tree
打出当前依赖库的树形结构。
[INFO] +- javax.servlet:javax.servlet-api:jar:4.0.1:compile
[INFO] +- org.apache.commons:commons-lang3:jar:3.8.1:compile
[INFO] +- commons-beanutils:commons-beanutils:jar:1.9.4:compile
[INFO] |
- commons-logging:commons-logging:jar:1.2:compile
[INFO] +- commons-collections:commons-collections:jar:3.2.1:compile
[INFO] +- org.dom4j:dom4j:jar:2.0.0:compile
[INFO] |
- jaxen:jaxen:jar:1.1.6:compile
[INFO] +- org.apache.poi:poi:jar:3.11:compile
[INFO] |
- commons-codec:commons-codec:jar:1.11:compile
[INFO] +- org.apache.poi:poi-scratchpad:jar:3.11:compile
[INFO] +- org.apache.poi:poi-ooxml:jar:3.11:compile
[INFO] +- org.apache.poi:poi-ooxml-schemas:jar:4.1.2:compile
[INFO] |
- org.apache.xmlbeans:xmlbeans:jar:3.1.0:compile
[INFO] +- commons-fileupload:commons-fileupload:jar:1.1.1:compile
[INFO] |
- commons-io:commons-io:jar:1.1:compile
通过搜索上述节选出来的树状结构可以发现,在dom4j中引入了jaxen的包。接下来就要从dom4j中除去这个包的引用:
<exclusions>
<exclusion>
<groupId>jaxen</groupId>
<artifactId>jaxen</artifactId>
</exclusion>
</exclusions>
将上述包排除之后,项目恢复正常。
假如你必须要使用这个包怎么办?绕过org.w3c.dom这个包,用别的实现方法吧。。。
最后
以上就是壮观小虾米为你收集整理的Java11引用org.w3c.dom 时报错The package org.w3c.dom is accessible from more than one module: , java.xmlJava11 引用 org.w3c.dom 时报错The package org.w3c.dom is accessible from more than one module: , java.xml 的解决方法的全部内容,希望文章能够帮你解决Java11引用org.w3c.dom 时报错The package org.w3c.dom is accessible from more than one module: , java.xmlJava11 引用 org.w3c.dom 时报错The package org.w3c.dom is accessible from more than one module: , java.xml 的解决方法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复