当前位置: 首页 > 面试题库 >

Eclipse Java编辑器突出显示该错误,但代码可以编译

常宸
2023-03-14
问题内容

使用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中的错误还是依赖项/项目中的问题?


问题答案:

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

Eclipse错误546315-
[11]“可通过多个模块访问包[…]:,[…]”错误在Java编辑器中显示

该错误已得到修复。因此,要么忽略它(因为代码已编译),要么使用像Eclipse 2019-06(4.12)这样的较新版本。



 类似资料:
  • 我在Windows和OSX上使用IntelliJ开发一个包含ScalaJS部分的Play framework项目。该项目使用Activator在两个系统上正确构建和运行。 然而,Windows上的IntelliJ编辑器在我的源代码中下划线,而在OSX上却没有。如果我导航到与错误相关的库源代码,我会找到不同的文件。例如,在Windows上,它可能转到:

  • 你马上就要写下第一行代码,现在该下载一个代码编辑器了! 注意在之前章节你可能已经完成了这一步,如果那样的话,你可以直接进入下一章节。 有很多不同的编辑器,通常根据个人偏好选择。 大部分 Python程序员使用像 PyCharm这样复杂但是功能强大的IDE (集成开发环境)。 然而,这可能不太适合初学者。我们建议使用同样强大但是更为简单的编辑器。 下面是我们的建议,但是你可以随时咨询你的教练。那样会

  • 程序员接触时间最长的就是代码编辑器。 代码编辑器主要分两种:IDE(集成开发环境)和轻量编辑器。很多人喜欢这两种各选一个。 IDE IDE(集成开发环境)是指用于管理整个项目的,具有强大功能的编辑器。顾名思义,它不仅仅是一个编辑器,而且还是个完整的“开发环境”。 IDE 加载项目(通常包含很多文件),并且允许在不同文件之间导航(navigation)。IDE 还提供基于整个项目(不仅仅是打开的文件

  • 我在IntelliJ中有一个项目,有两个注释处理器:Lombok和另一个简单的处理器。 当用Gradle编译时,无论是在IntelliJ内部还是外部,一切都很好。 当使用默认的IntelliJ设置运行时,Lombok可以工作,但其他处理器不能 当我选中设置->构建、执行、部署->编译器->批注处理器下的框时,将执行第二个处理器,但编译失败,在使用生成的代码时出现错误 当我还将sources目录更改

  • Blockly的大多数应用程序都可以将用户程序翻译成JavaScript,Python,PHP,Lua,Dart或其他语言。此操作由Blockly在客户端执行。 生成代码 第一步是导入相关语言的生成器。 Blockly包括以下生成器: javascript_compressed.js python_compressed.js php_compressed.js lua_compressed.js

  • 我正在处理引导表。文之心自举表的扩展。 引导表可编辑 我正在使用OnEditable向服务器发送数据(使用Laravel处理服务器请求)。我收到关于结果的错误代码作为回报。但我似乎找不到一种方法来显示可编辑的Popover上的错误,或者阻止用旧值替换新值。当我们验证输入时,会显示Like错误。 我已经检查了可编辑的- 这是我的密码: 我希望这种错误会显示: 预期产出