gpt4 book ai didi

java - 无法将裸机 web 应用程序部署到运行 openjdk 11 的 tomee 7.1.0

转载 作者:行者123 更新时间:2023-11-30 05:45:50 26 4
gpt4 key购买 nike

我计划将 web 应用程序从 java 8/tomee 7.0.4 迁移到 java 11/tomee 7.1.0,但仍然不成功。因此,我编写了一个准系统 Web 应用程序,只有一个 Facelet 页面和一个托管 bean。这适用于 java 10/tomee 7.1.0,但不适用于 java 11。错误是:

java.lang.IllegalStateException: Cannot get Unsafe.defineClass
....
java.lang.NoSuchMethodException: sun.misc.Unsafe.defineClass(java.lang.String, [B, int, int, java.lang.ClassLoader, java.security.ProtectionDomain)

经过一番谷歌搜索后,来自http://tomee-openejb.979440.n4.nabble.com/Some-jars-in-TomEE-8-SNAPSHOT-are-not-Java-11-compatible-td4685162.html看来问题源于jaxb-impl。所以我尝试根据 https://winterbe.com/posts/2018/08/29/migrate-maven-projects-to-java-11-jigsaw/ 添加到 pom.xml失败了。我恢复了pom.xml并按照Java 11 package javax.xml.bind does not exist修改这也失败了。

这是针对不太流行的 tomee 服务器。但 tomee 7.1.0 是基于 tomcat 8.5 的,后者应该更受欢迎。我想问题还是一样。

感谢您的建议,我认为很多人应该有同样的问题。

最佳答案

尝试将您的 tomcat/tomee 升级到最新版本,或降级您的 Java 版本,因为不兼容的版本往往会引发这些 NoSuchMethod/NoSuchFile 异常。

可能一种技术依赖于某种其他技术,并且知道某个 API 版本,但您正在尝试使用更高的 API 版本,这可能完全不同。

另一种可能性是 tomee 还没有准备好使用 java 11(但这似乎不太可能)。

关于java - 无法将裸机 web 应用程序部署到运行 openjdk 11 的 tomee 7.1.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54850580/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com