OpenJDK 16 和 Glassfish 6.1.0 部署导致 SAXException

问题描述

我最近在计算机崩溃后恢复了我的 Java EE 设置,我想我会尝试 Open JDK 16 和 Glassfish 6.1.0,但在部署我的应用程序时,我遇到了以下异常,这是我以前从未见过的:

java.io.IOException: com.sun.enterprise.admin.remote.RemoteFailureException: Error occurred during deployment: Exception while deploying the app [myapp-0.0.1-SNAPSHOT] : org.xml.sax.SAXException: Requested schema is not found in local repository,please ensure that there are no typos in the XML namespace declaration.. Please see server.log for more details.

我不确定如何解决这个问题,或者我应该回滚到 JDK11。我之前运行的是 JDK 1.8.0 和 Glassfish 5.1.0

解决方法

Eclipse Glassfisch 6.1.0 目前不支持 JDK 16。只有 JDK11。

从文档中找到here

Eclipse GlassFish 6.2.0 是 Jakarta EE 9.1 兼容实现和 Eclipse GlassFish 的最新版本。它支持 Jakarta MVC 作为一项主要的新功能。正式支持 JDK 11。在 JDK 16 上运行(但未在 16 上进行全面测试)。

Eclipse GlassFish 6.1.0 是 Jakarta EE 9.1 兼容实现和 Eclipse GlassFish 的前一版本。它在功能上与 Eclipse GlassFish 6.0.0 相同,但支持 JDK 11。

Eclipse GlassFish 6.0.0 是 Jakarta EE 9 兼容实现和 Eclipse GlassFish 的旧版本。此版本仅支持 JDK 8。

因此您需要使用 jdk11 编译您的应用程序或升级到 glassfish 6.2.0。但请注意:它还没有在 jdk 16 上进行全面测试。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...