gpt4 book ai didi

java - 使用 Spring-DM 扩展器

转载 作者:行者123 更新时间:2023-12-01 17:30:10 26 4
gpt4 key购买 nike

我需要等待一段时间才能关闭 OSGI 上下文。(给一些时间来完成当前正在运行的任务)。我在 extenderProperties bean 中遇到了 shutdown.wait.time 属性。

谁能告诉我如何使用这个 OSGi 片段来实现我的目标?我想我可以将一个片段包附加到我现有的 OSGI 包中。

提前致谢。感谢您的帮助。

最佳答案

您需要创建一个包含两个文件的包:META-INF/MANIFEST.MF 和 META-INF/spring/extender/extender.xml(xml 文件可以命名为带有 xml 扩展名的任何名称,但是必须位于 META-INF/spring/extender 文件夹中)。您的 MANIFEST.MF 文件需要包含 org.springframework.osgi.extender 的 OSGi list header Fragment-Host。如果您使用 maven-bundle-plugin,您的插件配置将如下所示:

...
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.3.5</version>
<extensions>true</extensions>
<configuration>
<instructions>
<Fragment-Host>org.springframework.osgi.extender</Fragment-Host>
</instructions>
</configuration>
</plugin>
...

您的extender.xml 文件需要定义一个名为extenderPropertiesjava.util.Properties bean。它应该包含一个名为 shutdown.wait.time 的属性,其值以毫秒为单位(例如 30000 表示 30 秒)。该文件可能如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd">
<util:properties id="extenderProperties">
<prop key="shutdown.wait.time">30000</prop>
</util:properties>
</beans>

然后将 bundle 部署到您的环境中。您可能需要重新启动 Spring OSGi 包(或您的服务器),具体取决于此片段包相对于 Spring DM 包的安装顺序。

关于java - 使用 Spring-DM 扩展器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11847843/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com