在Weblogic管理员控制台上部署ear文件时,出现以下错误-

javax.servlet.ServletException: [HTTP:101249][ServletContext@47518104[app:CorporateActionDatabaseEAR-0 module:/CorporateActionDatabaseWAR path:/CorporateActionDatabaseWAR spec-version:null]]: Servlet class org.glassfish.jersey.servlet.ServletContainer for servlet Jersey Web Application could not be loaded because the requested class was not found in the classpath . java.lang.UnsupportedClassVersionError: org/glassfish/jersey/servlet/ServletContainer : unsupported classversion 51.0.


知道为什么会这样吗?我知道这与添加jersey-container-servlet-core jar有关,但是我应该在哪个模块中添加它呢?我的war模块还是我的jar模块还是我的ear模块?请注意,这是我从中获得的ear文件的maven Web项目。

我的Java版本是1.7,我已经尝试将jersey-core-1.17.1jersey-servlet-1.17.1添加到war模块的构建路径,但是我似乎仍然遇到相同的错误。

非常感激!

最佳答案

您将哪个版本的JRE用于weblogic?

“不受支持的classversion X.Y.” JVM尝试加载使用更高版本的Java编译的类文件时,将发生错误。在这种情况下,51.0表示他的类文件已使用Java 1.7进行编译,并且您的Java版本可能小于1.7。在这种情况下,我看到两个解决方案


使用Java 1.7或更高版本来运行weblogic。
或者获取与您的JRE兼容的jersey-container-servlet-core jar(以及相关的jar,如果有的话)。

07-24 09:47
查看更多