Java 无法将裸体webapp部署到运行openjdk 11的tomee 7.1.0
我计划将一个webapp从java8/tomee7.0.4迁移到java11/tomee7.1.0,但仍然没有成功。所以我写了一个赤裸裸的webapp,只有一个facelet页面和一个托管bean。这适用于Java10/Tomee7.1.0,但不适用于Java11。错误是:Java 无法将裸体webapp部署到运行openjdk 11的tomee 7.1.0,java,maven,tomcat8,java-11,tomee-7,Java,Maven,Tomcat8,Java 11,Tomee 7,我计划将一个webapp从java8/tomee7.0.4迁移到java11/tomee7.1.0,但仍然没有成功。所以我写了一个赤裸裸的webapp,只有一个facelet页面和一个托管bean。这适用于Java10/Tomee7.1.0,但不适用于Java11。错误是: java.lang.IllegalStateException: Cannot get Unsafe.defineClass .... java.lang.NoSuchMethodException: sun.misc.Un
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)
通过谷歌搜索,问题似乎源于jaxb impl。因此,我尝试添加到pom.xml,但失败了。我恢复了pom.xml并根据它进行了修改,但也失败了
这是针对不太流行的tomee服务器的。但是Tomee7.1.0是基于Tomcat8.5的,它应该更受欢迎。我想问题还是一样的
非常感谢您的建议,我认为许多人也应该有同样的问题。尝试将您的tomcat/tomee升级到最新版本,或者降级您的Java版本,因为不兼容的版本往往会引发这些异常 可能是一种技术依赖于另一种技术,并且知道某个API版本,但您正在尝试使用更高的API版本,这可能是完全不同的
另一种可能是tomee还没有准备好使用java 11(但这似乎不太可能)。请注意,您的第一个链接似乎是关于tomee-8-SNAPSHOT,而不是7。谢谢,我下载了tomee 8.0.0-M1(但这是一个评估版本),它成功了。但我想在实际使用之前,我会等待产品发布。