当前位置: 首页 > 知识库问答 >
问题:

Websphere 8.5.0.2抛出不兼容的java版本

孔运珧
2023-03-14

Websphere 8.5.0.2具有java 1.7u67。因此,我正在使用Java 1.7u60构建我的应用程序。但Websphere在部署时仍会抱怨,不兼容的版本和应用程序可能已编译为服务器配置的更高版本。

除了1.7u60之外,我的本地系统中没有其他版本的Java。不确定引发此错误的原因。这可能是websphere的问题吗?或者,在构建应用程序时,我是否遗漏了什么?附言:这是一个。我尝试在其中部署的ear文件是8.5

编辑:

WebSphere引发的错误是-

ADMA5006E:在WebSphere Application Server存储库com中配置FIN-RA时出错。ibm。websphere。经营例外AdminException:ADMN0068E:加载资源适配器类com时发生异常。鳍ps.ra。稀有资源捕获器。该类可能是使用比应用程序服务器使用的Java版本更新的版本编译的。例外情况是:java。lang.UnsupportedClassVersionError:JVMCFRE003主版本错误;类别=com/fin/ps/ra/RaResourceAdapter,偏移=6

WebSphere中的Java版本:

java版本“1.7.0\u 67”java(TM)SE运行时环境(build 1.7.0\u 67-b01)java HotSpot(TM)64位服务器VM(build 24.65-b04,混合模式)

编辑2:

命令managesdk-enableProfileAll-sdkname 1.7\u 64-enableServers未工作,正在抛出“profile cannot be enabled”。所以我运行了以下命令。

Managesdk-enableProfile-filileName FMfilile2-sdkName 1.7_64。这工作正常。

当我运行managesdk-listEnabledProfile-profileName FMprofile2时。结果是,

CWSDK1004I:配置文件FMprofile2:
CWSDK1006I:配置文件\u命令\u SDK=1.7\u 64
CWSDK1008I:节点FMNode02 SDK名称:1.7\u 64
CWSDK1009I:服务器FDIND SDK名称:1.7\u 64
CWSDK1009I:服务器节点代理SDK名称:1.7\u 64
CWSDK1009I:服务器FMmember2 SDK名称:1.6\u 64

这里有两个问题:
1)为什么即使启用了整个配置文件,仍有1.6\u 64的服务器
2)我在服务器FDIND上工作时使用的任何方式,该服务器已启用为1.7\u 64。所以我尝试重新部署我的应用程序,但最终还是出现了同样的错误。原因可能是什么?

PS:还运行命令syncNode并重新启动节点。

共有2个答案

公孙栋
2023-03-14

问题是IBM提供了他们自己的JRE,我建议使用IBMJDK/JRE

使用以下链接验证JRE版本。

唐裕
2023-03-14

WebSphere 8.5. x默认带有Javav6,即使您安装了额外的Javav7,您也必须使用Management esdk命令为给定的配置文件启用它。

确保您的个人资料已启用:

managesdk -listEnabledProfileAll -verbose

如果未启用-使用启用:

managesdk -enableProfileAll -sdkname yourV7SdkName -enableServers

要查找sdkname问题:

managesdk -listAvailable -verbose
 类似资料:
  • 我目前安装了Java8(更新171)和Oxygen.3a(4.7.3a)(Eclipse版本)。我以前下载过Java10,但我读到有一个bug,WindowBuilder不能在该版本上工作,它被推荐为版本8,这是我下载并安装的版本(在卸载版本10后)。但问题还在。 我能做些什么来解决这个问题?谢谢你。

  • 问题内容: 我刚刚安装了Eclipse Oxygen并创建了一个JFrame项目。从源视图切换到设计视图时,出现“不兼容的Java版本错误”。 完全错误Desc:Eclipse在0以下运行,但是此Java项目的Java兼容级别为10,因此WindowBuilder将无法从该项目中加载类。对项目使用较低级别的Java,或使用较新的Java版本运行Eclipse。 我在Windows中检查了版本->首

  • 我正在使用生成cacerts。 然后我使用,但我会遇到这样的例外: 这是兼容性问题吗?使用一个版本的java生成的Cacert是否与另一个版本的java不兼容?

  • 我有一个使用JDK1.7编译的jar文件,我想在加载时检查一下我的jar运行的java运行时环境是否是1.7或更新的。有办法做到这一点吗? 我尝试使用System.getProperty(“java.version”),但这没有帮助,因为我的类版本是51,而JRE1.6拒绝加载它。

  • 问题内容: 我的应用程序有一个硬依赖或优于 但是我也在使用它与> 22.0的番石榴版本不兼容,如下所述: https://github.com/SeleniumHQ/selenium/issues/4381 我对Java很陌生,这里最好的做法是什么? 我已经研究过类加载器,但是看起来像是一个很深的兔子洞。 问题答案: 由于您对 使用有严格的依赖, 可能会使您走上十字路口。但是 Selenium发行

  • 这本书讲述的是 Swift 5.1,它是 Xcode 11 中包含的默认版本。你可以使用 Xcode 11 来编译用 Swift 5.1、Swift 4.2 或 Swift 4 写的代码。 当你使用 Xcode 11 编译 Swift 4 和 Swift 4.2 代码时,大部分 Swift 5.1 的功能是可用的。也就是说,下面的变更仅对 Swift 5.1 或后续版本生效: 返回不透明类型的函数