【问题标题】:Eclipse Java Editor highlights the error but code compilesEclipse Java 编辑器突出显示错误但代码编译
【发布时间】:2019-05-02 08:01:12
【问题描述】:

当使用 JDK 11、Eclipse 2019-03 和 jaxb-api(2.4 版,maven 存储库中提供最新版本)时,Eclipse 中的 Java 编辑器会突出显示该行:

import javax.xml.XMLConstants;

作为一个错误:

包 javax.xml 可以从多个模块访问:未命名,java.xml

但是代码编译并且没有错误显示在问题选项卡中。删除 jaxb-api 依赖项会使错误消失。本项目中的 jaxb-api 在类路径中,包含以下包:

javax.xml.bind;
javax.xml.bind.annotation;
javax.xml.bind.annotation.adapters;
javax.xml.bind.attachment;
javax.xml.bind.helpers;
javax.xml.bind.util;

是 Eclipse 中的错误还是依赖项/项目中的问题?

【问题讨论】:

    标签: java eclipse jaxb


    【解决方案1】:

    是的,这是 Eclipse 2019-03 Java IDE 的一个错误(在jaxb-api javax.xml 是一个子包,这是允许的,但不是真正的包,这是不允许的):

    Eclipse Bug 546315 - [11] "The package […] is accessible from more than one module: , […]" error shown in Java editor by mistake

    该错误已被修复。所以要么忽略它(因为代码已编译),要么使用较新的版本,如 Eclipse 2019-06 (4.12)。

    【讨论】:

      【解决方案2】:

      当您在 ModulePath 中添加外部 jar 时会发生这种情况。

      解决方案:

      1) 从节点“Modulepath”中删除外部 jar。 2)选择节点“类路径”,然后添加外部罐子。 3) 检查所有的 jars 都在“Classpath”节点下。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-06-10
        • 2012-03-23
        • 2012-11-27
        • 2016-10-30
        • 2018-07-28
        相关资源
        最近更新 更多