从JDK 8迁移到OPEN JDK 11-缺少导入

时间:2019-05-10 07:02:42

标签: java import java-11

我正在尝试将应用程序从Java 8迁移到Open JDK11。

JDK 11中缺少很少的导入内容。例如,我找不到下面的导入内容

import org.w3c.dom.Document;
import com.sun.org.apache.xerces.internal.impl.xpath.regex.ParseException;
import org.xml.sax.SAXException;

但是当我厌倦为(w3c-dom.jar)添加外部jar时,我们得到了以下错误

可从多个模块访问包org.w3c.dom:java.xml

和上面一样,所有导入都发生相同的错误

可通过多个模块访问包org.xml.sax:java.xml

请针对以上错误提出您的看法。

1 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,如下所述。

The package org.w3c.dom is accessible from more than one module: <unnamed>, java.xml.

因为存在一个内部生成 xml-apis.jar 的依赖项,而这个jar实际上是问题所在。我遵循以下提到的步骤,它对我有帮助。

  • 转到系统的.m2存储库文件夹,然后检查是否 xml-apis.jar 存在,如果是,则表明此jar正在产生问题。
  • 从存储库文件夹中删除此jar。
  • 并在pom.xml中排除 xml-apis 传递依赖项。
  • 刷新,重新编译项目并检查。

注意:根据您的情况,生成此xml-api.jar的情况可能会有所不同,因此请找到该依赖项并排除xm-api。

enter image description here