问题描述
我正在使用Blueprint扩展器注入我的服务。停止Karaf容器时,不会调用蓝图的停用方法/销毁方法。我们正尝试在Karaf关闭过程中从文件中删除一些条目/删除文件。 有人可以让我知道如何在Karaf关闭期间正确清理东西吗? 我尝试使用停用方法,destroy-method(在蓝图中)和SynchronousBundleListener。什么都没有解决。
我浏览了该论坛并找到了一些链接,其中说蓝图扩展程序立即停止,并且没有等待捆绑事件。
http://karaf.922171.n3.nabble.com/RFC-on-proposal-to-allow-hooks-into-Karaf-shutdown-td4026953.html http://karaf.922171.n3.nabble.com/Karaf-shutdown-td4048646.html
Karaf版本:4.1.4 karaf中使用的蓝图版本:aries-blueprint 4.1.4 堆栈跟踪:
2020-10-30T17:41:16.208+0100 | INFO | Karaf Shutdown Socket Thread | o.a.k.m.ShutdownSocketThread | .karaf.main.ShutdownSocketThread 111 | - - | Karaf shutdown socket: received shutdown command. Stopping framework...
2020-10-30T17:41:16.211+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 169 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Stopping blueprint extender...
2020-10-30T17:41:16.215+0100 | DEBUG | Framework stop | o.a.a.b.core | ogback.internal.FrameworkHandler 171 | 20 - org.apache.aries.blueprint.core - 1.8.3 | ServiceEvent UNREGISTERING - {org.apache.aries.blueprint.services.ParserService}={service.id=41,service.bundleid=20,service.scope=singleton} - org.apache.aries.blueprint.core
2020-10-30T17:41:16.218+0100 | DEBUG | Framework stop | o.a.a.b.core | ogback.internal.FrameworkHandler 171 | 20 - org.apache.aries.blueprint.core - 1.8.3 | ServiceEvent UNREGISTERING - {org.apache.aries.blueprint.services.BlueprintExtenderService}={service.id=42,service.scope=singleton} - org.apache.aries.blueprint.core
2020-10-30T17:41:16.219+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 464 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Usage for bundle org.apache.aries.blueprint.cm/1.1.0 is 9
2020-10-30T17:41:16.219+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 464 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Usage for bundle org.apache.karaf.shell.core/4.1.4 is 9
2020-10-30T17:41:16.219+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 464 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Usage for bundle com.java.test.pack.packager.event.ingestion/1.0.0 is 7
2020-10-30T17:41:16.219+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 464 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Usage for bundle org.apache.aries.blueprint.core/1.8.3 is 17
2020-10-30T17:41:16.219+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 464 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Usage for bundle org.apache.karaf.jaas.blueprint.config/4.1.4 is 5
2020-10-30T17:41:16.219+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 464 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Usage for bundle org.apache.camel.camel-blueprint/2.25.0 is 4
2020-10-30T17:41:16.219+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle org.apache.aries.blueprint.cm/1.1.0 for destroy (with reference {org.apache.aries.blueprint.NamespaceHandler}={osgi.service.blueprint.namespace=http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.2.0,service.id=62,osgi.service.blueprint.compname=CmNamespaceHandler,service.bundleid=19,service.scope=bundle})
2020-10-30T17:41:16.219+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle org.apache.aries.blueprint.cm/1.1.0 for destroy (with reference {org.apache.aries.blueprint.NamespaceHandler}={osgi.service.blueprint.namespace=http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0,service.id=63,service.scope=bundle})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle org.apache.aries.blueprint.cm/1.1.0 for destroy (with reference {org.apache.aries.blueprint.NamespaceHandler}={osgi.service.blueprint.namespace=http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0,service.id=64,service.scope=bundle})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle org.apache.aries.blueprint.cm/1.1.0 for destroy (with reference {org.apache.aries.blueprint.NamespaceHandler}={osgi.service.blueprint.namespace=http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.3.0,service.id=65,service.scope=bundle})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle org.apache.aries.blueprint.cm/1.1.0 for destroy (with reference {org.osgi.service.blueprint.container.BlueprintContainer}={osgi.blueprint.container.version=1.1.0,service.id=66,service.scope=singleton,osgi.blueprint.container.symbolicname=org.apache.aries.blueprint.cm})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle org.apache.karaf.shell.core/4.1.4 for destroy (with reference {org.osgi.service.cm.ConfigurationListener}={service.id=131,service.bundleid=60,service.scope=singleton})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle org.apache.karaf.shell.core/4.1.4 for destroy (with reference {org.apache.karaf.shell.api.console.SessionFactory}={service.id=132,service.scope=singleton})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle org.apache.karaf.shell.core/4.1.4 for destroy (with reference {org.apache.aries.blueprint.NamespaceHandler}={osgi.service.blueprint.namespace=http://karaf.apache.org/xmlns/shell/v1.0.0,service.id=135,osgi.service.blueprint.compname=namespaceHandler,service.scope=bundle})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle org.apache.karaf.shell.core/4.1.4 for destroy (with reference {org.apache.aries.blueprint.NamespaceHandler}={osgi.service.blueprint.namespace=http://karaf.apache.org/xmlns/shell/v1.1.0,service.id=136,service.scope=bundle})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle org.apache.karaf.shell.core/4.1.4 for destroy (with reference {org.osgi.service.blueprint.container.BlueprintContainer}={osgi.blueprint.container.version=4.1.4,service.id=137,osgi.blueprint.container.symbolicname=org.apache.karaf.shell.core})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle com.java.test.pack.packager.event.ingestion/1.0.0 for destroy (with reference {org.apache.karaf.bundle.core.BundleStateService}={service.id=348,service.bundleid=267,service.scope=singleton})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle com.java.test.pack.packager.event.ingestion/1.0.0 for destroy (with reference {org.osgi.service.blueprint.container.BlueprintListener}={service.id=349,service.scope=singleton})
2020-10-30T17:41:16.220+0100 | DEBUG | Framework stop ueprintExtender 487 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Currently selecting bundle com.java.test.pack.packager.event.ingestion/1.0.0 for destroy (with reference {org.apache.camel.CamelContext}={service.id=355,camel.context.managementname=com.java.test.pack.packager.event.ingestion-camelcontext-0,camel.context.name=camelcontext-0,camel.context.symbolicname=com.java.test.pack.packager.event.ingestion,camel.context.version=1.0.0})
2020-10-30T17:41:16.221+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 496 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Selected bundles [com.java.test.pack.packager.event.ingestion/1.0.0] for destroy (lowest ranking service)
2020-10-30T17:41:16.221+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 315 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Starting BlueprintContainer destruction process for bundle com.java.test.pack.packager.event.ingestion/1.0.0
2020-10-30T17:41:16.221+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 320 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Scheduling BlueprintContainer destruction for com.java.test.pack.packager.event.ingestion/1.0.0.
2020-10-30T17:41:16.222+0100 | DEBUG | Framework stop | o.a.a.b.c.BlueprintExtender | rint.container.BlueprintExtender 345 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Waiting for BlueprintContainer destruction for com.java.test.pack.packager.event.ingestion/1.0.0.
2020-10-30T17:41:16.222+0100 | INFO | Framework stop | o.a.a.b.c.BlueprintExtender | nt.container.BlueprintExtender$3 323 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Destroying BlueprintContainer for bundle com.java.test.pack.packager.event.ingestion/1.0.0
2020-10-30T17:41:16.222+0100 | DEBUG | Framework stop | a.a.b.c.BlueprintEventdispatcher | ntainer.BlueprintEventdispatcher 136 | 20 - org.apache.aries.blueprint.core - 1.8.3 | Sending blueprint container event BlueprintEvent[type=DESTROYING] for bundle com.java.test.pack.packager.event.ingestion/1.0.0
2020-10-30T17:41:16.222+0100 | DEBUG | Blueprint Event dispatcher: 1 | .k.b.s.b.i.BlueprintStateService | t.internal.BlueprintStateService 103 | 34 - org.apache.karaf.bundle.blueprintstate - 4.1.4 | Blueprint app state changed to Stopping for bundle 267
2020-10-30T17:41:16.223+0100 | DEBUG | Blueprint Event dispatcher: 1 | o.a.c.b.BlueprintCamelContext | .blueprint.BlueprintCamelContext 181 | 352 - org.apache.camel.camel-blueprint - 2.25.0 | Received BlueprintEvent[replay=false type=DESTROYING bundle=com.java.test.pack.packager.event.ingestion] %s
2020-10-30T17:41:16.231+0100 | DEBUG | Framework stop
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)