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

Migrating from JDK 8 to OPEN JDK 11 - Missing imports(从JDK 8迁移到打开JDK 11-缺少导入)

本文介绍了从JDK 8迁移到打开JDK 11-缺少导入的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

其中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

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

推荐答案

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

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-API传递依赖项。
  • 刷新、重新编译项目并检查。

注意:在您的情况下,生成此xml-api.jar的依赖项可能不同,因此找到该依赖项并排除XM-API。

这篇关于从JDK 8迁移到打开JDK 11-缺少导入的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:从JDK 8迁移到打开JDK 11-缺少导入