gpt4 book ai didi

java - Apache Karaf 创建组件两次

转载 作者:行者123 更新时间:2023-12-01 17:05:32 24 4
gpt4 key购买 nike

尝试使用 FeatureService 从我的主组件安装功能时,Apache Karaf 4.2.7 出现问题。

安装功能后,我的所有组件都会激活两次。

有人知道问题出在哪里吗?

我有带有 bnd 插件的 gradle 模块

tasks.jar {
withConvention(aQute.bnd.gradle.BundleTaskConvention::class) {
bnd("""Export-Package: !*
Import-Package: \
sun.jvmstat.*;resolution:=optional,\
com.sun.tools.attach;resolution:=optional,\
ru.sbrf.utracer.sensor.api.*;resolution:=optional,\
ru.sbrf.utracer.init.*;resolution:=optional,\
io.netty.*;resolution:=optional,\
*
""".trimIndent())
}
}
@Component(immediate = true)
public class Server implements MetricSender {

private String host;
private String port;
private HttpClient httpClient;

@Activate
public void activate(Map<String, String> properties) {
System.out.println("[SERVER] activate");
connect();
}

private void connect() {
httpClient = new NettyHttp2Client(host, Integer.parseInt(port));
}

仅当 NettyHttp2Client 调用内部的 bootstrap.connect().sync(); 时才重复。

最佳答案

我怀疑您的组件的 bundle 可能会与您指定的一些可选包导入重新连接。在启动过程中,您的组件可能会被激活,然后关闭并在其他可选包可用时重新激活。

关于java - Apache Karaf 创建组件两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61468069/

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