# solon-demo **Repository Path**: zhangbinhub/solon-demo ## Basic Information - **Project Name**: solon-demo - **Description**: 用于提issu的demo - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-08-25 - **Last Updated**: 2025-01-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## modules/plugin - 插件 - 定义接口[LogAdapter.kt](modules/plugin/src/main/kotlin/io/issu/plugin/log/LogAdapter.kt) - 监听`AppLoadEndEvent`事件,监听器中注入`LogAdapter` 的实现Bean[SetupConfiguration.kt](modules/plugin/src/main/kotlin/io/issu/plugin/SetupConfiguration.kt) - 提供默认实现`LogAdapter`的Bean `DefaultLogAdapter`[ComponentConfiguration.kt](modules/plugin/src/main/kotlin/io/issu/plugin/ComponentConfiguration.kt) ## modules/demo solon启动程序,没有其他任何逻辑 - 依赖 modules/plugin2 - 启动主程序,监听`AppLoadEndEvent` ,运行插件中的[ApplicationStartupListener.kt](modules/plugin/src/main/kotlin/io/issu/plugin/init/ApplicationStartupListener.kt) - 查看控制台输出 ## 问题 - 当plugin[SetupConfiguration.kt](modules/plugin/src/main/kotlin/io/issu/plugin/SetupConfiguration.kt)中的 `acpApplicationStartupListener` 方法参数注入集合类型时,Bean会被创建并注册到Bus中两次,导致[ApplicationStartupListener.kt](modules/plugin/src/main/kotlin/io/issu/plugin/init/ApplicationStartupListener.kt) 的`onEvent`方法会被执行两次