【问题标题】:org.osgi.framework.BundleException: Could not resolve module: org.wso2.carbon.capp.monitororg.osgi.framework.BundleException:无法解析模块:org.wso2.carbon.capp.monitor
【发布时间】:2022-10-31 15:19:21
【问题描述】:

我在用WSO2 集成工作室 8.1.0在我的机器上开发 API,当尝试在 Micro Integrator 上运行时,我收到以下错误:

ERROR {Framework} - FrameworkEvent ERROR org.osgi.framework.BundleException: Could not resolve module: org.wso2.carbon.capp.monitor [170]
  Unresolved requirement: Import-Package: org.wso2.carbon.application.deployer

    at org.eclipse.osgi.container.Module.start(Module.java:457)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel$1.run(ModuleContainer.java:1820)
    at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor$2$1.execute(EquinoxContainerAdaptor.java:150)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1813)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1770)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1735)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1661)
    at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)
    at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:345)

但是在控制台中出现错误后,应用程序运行正常。

任何想法为什么我会收到此错误以及如何避免它?

【问题讨论】:

  • 这是突然发生的吗?
  • 是的,这突然发生

标签: wso2 wso2-esb


【解决方案1】:

由于 Integration Studio 中的错误 [1] 导致此问题发生。由于这个错误,Studio 使用旧 MI 版本的配置来运行/调试 CApp。要解决此问题,您需要更新 Integration Studio 并手动删除一些配置,如下所示,

  1. 删除下的服务器配置ESB 中介调试器通用服务器在调试配置中,

    1. 如果org.wso2.carbon.capp.monitor-3.0.0 jar 已经存在于IntegrationStudio/runtime/microesb/dropins 文件夹中,请将其删除。

    2. 重新启动 Integration Studio 以加载最新更新附带的新配置。

    请参考Get the latest updates 安装Integration Studio 的最新更新。

    [1] - https://github.com/wso2/api-manager/issues/772

【讨论】:

    【解决方案2】:

    MI 产品的组件在服务器启动过程中作为 OSGI 包在内核级别被激活。在这种情况下,与 org.wso2.carbon.capp.monitor 模块相关的 OSGI 包没有被激活,因为 org.wso2.carbon.application.deployer 模块在与 org.wso2 相关的 OSGI 包时不可用。 carbon.capp.monitor 模块被激活。因此,捆绑激活问题将在初始服务器启动过程中可见。

    但是,一旦与 org.wso2.carbon.application.deployer 相关的 bundle 成功激活,与 org.wso2.carbon.capp.monitor 模块相关的 OSGI bundle 也将被成功重新激活,即使在此期间发生了捆绑异常。初始捆绑激活过程。

    我们可以通过在 <Integration_STUDIO_INSTALLED_LOCATION>/runtime 中查找 org.wso2.carbon.capp.monitor-3.0.0.jar 文件来检查与 org.wso2.carbon.capp.monitor 模块相关的 OSGI 包是否成功激活启动 MI 服务器后的 /microesb/dropins 目录;此外,如果在服务器启动过程中未正确激活 OSGI 捆绑包,则 CAR 应用程序将无法成功部署。

    您还可以通过将 CAR 应用程序重新部署到 MI 服务器来验证它。在 CAR 应用程序重新部署过程中,您不会注意到该问题,因为它是由于服务器启动期间捆绑激活过程中的顺序而发生的。

    已报告此问题: https://github.com/wso2/api-manager/issues/772

    请按照官方指南获取最新更新: https://apim.docs.wso2.com/en/latest/integrate/develop/installing-wso2-integration-studio/#get-the-latest-updates

    干杯! 纳敦。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-12-11
      • 2018-11-10
      • 2020-04-15
      • 2021-07-14
      • 2021-11-07
      • 2020-12-02
      • 2021-07-21
      相关资源
      最近更新 更多