IBM MobileFirst Platform Operations Console:找不到运行时

Posted

技术标签:

【中文标题】IBM MobileFirst Platform Operations Console:找不到运行时【英文标题】:IBM MobileFirst Platform Operations Console : No runtime can be found 【发布时间】:2015-03-30 08:45:32 【问题描述】:

我的设置:

MobileFirst 平台基础 6.3.0.00-20141127-1357 Java HotSpot(TM) 64 位服务器 VM 上的 WebSphere Application Server 8.5.5.0 (1.0.3.20130510-0831),版本 1.7.0_75-b13(en_US) 托管在 softlayer 上

使用 6.3 的知识中心指南安装。 我现在有 1 个问题我似乎无法理解:

构建 .war 并尝试使用服务器配置工具部署它,但我最终得到“找不到运行时”,就像在各种帖子中一样。

我检查过的东西:

我的java版本很好 检查 server.xml 中的条目是否存在 WL 管理服务战争的重复项,仅存在一个。 检查了服务器配置工具实际上在servers/servername/apps中部署了war文件并更新了server.xml 尝试在 Eclipse 中设置运行和部署设置以指向我的服务器

我还能检查什么?现在有点发疯了。几个月前做过这个安装,我不记得有这么多的挣扎。

日志:http://pastebin.com/Z6CwqCVV server.xml:http://pastebin.com/MnpjQ2GY

另外,有没有人知道解释手动部署方法的好文章,尝试了 ibm 文档,但他们似乎认为我比我知道的更多。

想了解我需要在服务器 xml 中更新的核心元素以及将各种战争移动到何处,以便在安装后手动配置 mfp。

【问题讨论】:

日志的第 50 行,您有 FFDC 事件 FFDC1015I 的报告:已创建 FFDC 事件:“java.lang.NoClassDefFoundError: com/worklight/common/i18n/MessageCatalog com.ibm .ws.webcontainer.webapp.WebApp.notifyServletContextCreated 1341" 在 ffdc_15.03.30_04.27.06.0.log。你能看看 'serverdir'/logs/ffdc 中的文件 ffdc_15.03.30_04.27.06.0.log 吗?它可能包含有关问题根本原因的有价值信息。 我好像没有那些日志了,我会通过手动部署页面,但我想服务器配置工具会不太容易出错? 是的 - 这是服务器配置工具的目标。自动化以避免人为错误。 【参考方案1】:

当您启动 Liberty 服务器时会发出 NoClassDefFoundError 和 ClassNotFoundException 异常,这通常意味着您的 worklight-jee-library.jar 文件不存在于 $shared.resource.dir/worklight/lib 目录中或不正确一。另一种可能是您的运行时未迁移到 6.3 并且与 6.3.0.00-20141127-1357 版本不同步。

另请注意,Liberty 8.5.5.0 不受支持:http://www-969.ibm.com/software/reports/compatibility/clarity-reports/report/html/softwareReqsForProduct?deliverableId=1404132386734&osPlatforms=AIX|Linux|Mac%20OS|Mobile%20OS|Solaris|Windows&duComponentIds=S003&mandatoryCapIds=1|13|132|72&optionalCapIds=30|7|12|130|9|1|132|141|19|16|4|26

MFP 6.3 的最低版本是 Liberty Profile 8.5.5.3。

【讨论】:

Liberty Profile 8.5.0.2 也受支持。但是版本 8.5.5.[012]不支持。 所以擦除了服务器,切换到 Liberty 配置文件 8.5.5.4,重新安装了 mfp 6.3,我仍然收到类 def 错误。检查我的 shared.resource.dir 中有 worklight-jee-library.jar。那我还能检查什么?日志:pastebin.com/H3V9dkhf 部署时我仍然没有运行时。是否有更清晰的手动部署指南? ibm 文档似乎假设对 mfp 组件的理解超出了我的理解 如何安装 WAR 文件?您是复制 Studio 构建的 WAR 文件,还是服务器配置工具安装了它? (服务器配置工具执行迁移操作以确保 WAR 文件与 worklight-jee-library 二进制兼容) 尝试复制它,但我可能错过了 server.xml 中的设置,所以会再试一次,但想了解更多。事实上,在复制 WAR 文件时,正在寻找关于手动编辑哪些配置的好文章。否则我主要使用服务器配置工具 Anthony,我问是因为如果您没有使用服务器配置工具而是复制了它,如果您的开发环境与服务器的版本不同,那么您可能跳过了一个步骤,这可以解释您遇到的类未找到错误。此步骤记录在此处,但如果您使用服务器配置工具(在这种情况下会自动执行)www-01.ibm.com/support/knowledgecenter/SSZH4A_6.2.0/…,则无需了解它【参考方案2】:

想了解我需要在服务器 xml 中更新的核心元素以及将各种战争移动到何处,以便在安装后手动配置 mfp。

手动说明在这里:

1) 对于 Worklight 控制台(和管理服务)

数据库 (mysql):https://www-01.ibm.com/support/knowledgecenter/SSZH4A_6.2.0/com.ibm.worklight.installconfig.doc/admin/t_config_MySQL_DB_manually_for_wladmin.html(包括应用服务器中数据源的声明) 应用服务器(WAR 文件/jndi 变量/特性/appserver 配置...)https://www-01.ibm.com/support/knowledgecenter/SSZH4A_6.2.0/com.ibm.worklight.installconfig.doc/admin/t_configuring_liberty_profile_for_wladmin_manually.html

然后您有类似的运行时说明(使用 Worklight Studio 或 CLI 构建的项目 WAR 文件)

对于运行时的数据库(使用 mySQL):https://www-01.ibm.com/support/knowledgecenter/SSZH4A_6.2.0/com.ibm.worklight.deploy.doc/admin/t_config_MySQL_DB_manually.html [包括向 Liberty 声明数据源的步骤]

对于 Liberty 服务器:(功能/库/war 文件等。) https://www-01.ibm.com/support/knowledgecenter/SSZH4A_6.2.0/com.ibm.worklight.deploy.doc/admin/c_manually_configuring_app_server.html

服务器配置工具也应该这样做。

【讨论】:

所以找到了 6.3 的副本来构建应用程序和工作灯控制台可用,我可以部署适配器但不能部署 wlapps。检查了指向 max_allowed_pa​​cket 的类似帖子 - 但对我来说不是这种情况改变了两个 inis 都使用 --default ini 重新启动。并检查了显示变量 我有这个错误:E internalRun() Exception <898935 nonfatal user error> 【参考方案3】:

新日志文件 http://pastebin.com/H3V9dkhf 中的堆栈跟踪表明您正在使用 MobileFirst Platform 6.3 或更早版本中的 worklight-jee-library.jar,并结合了项目 WAR 文件

来自 MobileFirst Platform(Studio 或 MFP CLI)7.0 版, 或来自较旧的 MobileFirst Platform 但已迁移到版本 7.0(可能通过使用 MobileFirst Platform 7.0 中的服务器配置工具/Ant 任务)。

不支持这种组合,根据http://www-01.ibm.com/support/knowledgecenter/SSHS8R_7.0.0/com.ibm.worklight.upgrade.doc/devenv/c_compat.html中的表2。

你需要

或者将您的服务器升级到 7.0, 或使用与您的服务器匹配的版本的服务器配置工具/Ant 任务。

【讨论】:

明白了,当您说使用与您的服务器匹配的服务器配置工具时,您的意思是 MFP 6.3 中的服务器配置工具用于使用 6.3 构建的应用程序,如果使用 mfp 7 构建,则表示来自 mfp 7 的服务器配置工具对吗?跨度> 服务器配置工具和 ant 任务会自动迁移运行时战争,如果此战争不是使用与 MFP 服务器版本相同的 Studio 版本构建的。这意味着,例如,如果您安装了 MFP 7.0,您可以使用这些工具部署使用 Studio 6.3、6.2....构建的运行时。如果不迁移,您的 6.2/6.3 战争与 MFP 7.0 不兼容。但是您永远无法部署使用比您的 MFP 服务器更新的 Studio 版本构建的运行时。例如,使用 Studio 7.0 构建的运行时无法在 MFP Server 6.3 中运行

以上是关于IBM MobileFirst Platform Operations Console:找不到运行时的主要内容,如果未能解决你的问题,请参考以下文章

IBM MobileFirst Platform Operations Console:找不到运行时

Apache Cordova 和 IBM MobileFirst Platform 有啥区别

使用 Ionic 开发 IBM MobileFirst Platform 混合应用程序

在 IBM MobileFirst Platform 上获取位置时出错

如何在 IBM MobileFirst Platform Operations Console 中处理版本禁用

在 IBM MobileFirst Platform Android 中绕过自签名证书