小智 8
我从 Java 8 迁移到 Java 11 时遇到了同样的错误,并且我包含了对库 stax-api 1.0-2 的显式依赖:
<dependency>
<groupId>javax.xml.stream</groupId>
<artifactId>stax-api</artifactId>
<version>1.0-2</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
并排除了对库 stax-api 1.0.1 的任何过渡依赖:
...
<exclusion>
<groupId>stax</groupId>
<artifactId>stax-api</artifactId>
</exclusion>
...
Run Code Online (Sandbox Code Playgroud)
此后,我的 IDE 正确找到了丢失的导入 javax.xml.namespace.QName。
我希望这有帮助。
可能存在从其他依赖项中提取的重复依赖项。
在日食中做
从 esapi 依赖项中排除 xml-apis:
<dependency>
<groupId>org.owasp.esapi</groupId>
<artifactId>esapi</artifactId>
<version>2.2.0.0</version>
<exclusions>
<exclusion>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
</exclusion>
</exclusions>
</dependency>
Run Code Online (Sandbox Code Playgroud)就是这样
尝试更改类路径上元素的顺序。JRE 必须在 Maven 依赖项之前。这解决了问题。
我的猜测是 Java 10 编译器注意到您试图java.xml.namespace用 JAR 中的代码替换内部类 ( ) 并且它不喜欢那样。
| 归档时间: |
|
| 查看次数: |
11994 次 |
| 最近记录: |