迁移到 JDK 10 后 XML 类的 Eclipse 构建路径问题
将 Maven 项目从 Java 8 迁移到 JDK 10 时,Eclipse 用户可能会遇到涉及 javax.xml.xpath 等类的构建错误, org.w3c.dom.Document 和 org.xml.sax.SAXException。当将项目的 Java 构建路径切换到 JDK 10 时,特别会出现此问题。
根本原因
问题源于项目缺少模块信息。 java 文件。此设置会导致代码在“未命名模块”中编译。未命名模块可以从所有可观察模块加载包,在本例中包括来自 Java 运行时环境的 java.xml 和来自 Maven 依赖项的 xml-apis 等包。
规则违反
这种情况违反了 Java 语言规范 (JLS) §7.4.3,该规范要求限定类型名称的唯一可见性。在这种情况下,java.xml 和 xml-api 中的包为 java.xml.xpath 和相关类提供了冲突的定义。
解决方案
1 。添加一个 module-info.java 文件
实现一个 module-info.java 文件并指定需要的模块,要么需要 java.xml;或者需要 xml.apis;,解决可见性问题。
2.从可观察模块中排除 java.xml
通过从可观察模块列表中排除 java.xml 来避免冲突。这可以通过 Eclipse 中的“模块化详细信息”对话框来实现。
含义和结论
虽然 javac 可能不会拒绝错误代码,但根据JLS。此后,Eclipse 错误消息传递得到了改进,可以提供更具体的潜在问题指示。建议开发人员遵守 Java 的模块化准则并确保其模块的独特可见性,以防止此类构建错误。
以上是为什么在迁移到 JDK 10 后,我会遇到 XML 类的 Eclipse 构建路径错误?的详细内容。更多信息请关注PHP中文网其他相关文章!

JVM'SperformanceIsCompetitiveWithOtherRuntimes,operingabalanceOfspeed,安全性和生产性。1)JVMUSESJITCOMPILATIONFORDYNAMICOPTIMIZAIZATIONS.2)c提供NativePernativePerformanceButlanceButlactsjvm'ssafetyFeatures.3)

JavaachievesPlatFormIndependencEthroughTheJavavIrtualMachine(JVM),允许CodeTorunonAnyPlatFormWithAjvm.1)codeisscompiledIntobytecode,notmachine-specificodificcode.2)bytecodeisisteredbytheybytheybytheybythejvm,enablingcross-platerssectectectectectross-eenablingcrossectectectectectection.2)

TheJVMisanabstractcomputingmachinecrucialforrunningJavaprogramsduetoitsplatform-independentarchitecture.Itincludes:1)ClassLoaderforloadingclasses,2)RuntimeDataAreafordatastorage,3)ExecutionEnginewithInterpreter,JITCompiler,andGarbageCollectorforbytec

JVMhasacloserelationshipwiththeOSasittranslatesJavabytecodeintomachine-specificinstructions,managesmemory,andhandlesgarbagecollection.ThisrelationshipallowsJavatorunonvariousOSenvironments,butitalsopresentschallengeslikedifferentJVMbehaviorsandOS-spe

Java实现“一次编写,到处运行”通过编译成字节码并在Java虚拟机(JVM)上运行。1)编写Java代码并编译成字节码。2)字节码在任何安装了JVM的平台上运行。3)使用Java原生接口(JNI)处理平台特定功能。尽管存在挑战,如JVM一致性和平台特定库的使用,但WORA大大提高了开发效率和部署灵活性。

JavaachievesPlatFormIndependencethroughTheJavavIrtualMachine(JVM),允许Codetorunondifferentoperatingsystemsswithoutmodification.thejvmcompilesjavacodeintoplatform-interploplatform-interpectentbybyteentbytybyteentbybytecode,whatittheninternterninterpretsandectectececutesoneonthepecificos,atrafficteyos,Afferctinginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginginging

JavaispoperfulduetoitsplatFormitiondence,对象与偏见,RichstandardLibrary,PerformanceCapabilities和StrongsecurityFeatures.1)Platform-dimplighandependectionceallowsenceallowsenceallowsenceallowsencationSapplicationStornanyDevicesupportingJava.2)

Java的顶级功能包括:1)面向对象编程,支持多态性,提升代码的灵活性和可维护性;2)异常处理机制,通过try-catch-finally块提高代码的鲁棒性;3)垃圾回收,简化内存管理;4)泛型,增强类型安全性;5)ambda表达式和函数式编程,使代码更简洁和表达性强;6)丰富的标准库,提供优化过的数据结构和算法。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

Dreamweaver Mac版
视觉化网页开发工具

SublimeText3汉化版
中文版,非常好用

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。