From 64849adfabe4b089e3df94dc5c1cd053e98eea74 Mon Sep 17 00:00:00 2001 From: LamGC Date: Thu, 14 Apr 2022 21:46:01 +0800 Subject: [PATCH] =?UTF-8?q?fix(config):=20=E4=BF=AE=E5=A4=8D=E6=BD=9C?= =?UTF-8?q?=E5=9C=A8=E7=9A=84=E6=9C=AA=E5=88=9D=E5=A7=8B=E5=8C=96=E5=BC=82?= =?UTF-8?q?=E5=B8=B8.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 原设计中, PathConst 类会晚于 AppPaths 类中各枚举值的初始化, 进而导致 DATA_ROOT 获取 PathConst 中字段时出现未初始化异常的情况. 由于 AppPaths 设计为在运行时生成并获取路径, 所以该文件不会对 AppPaths 造成太大影响, 但 Kotlin 已决定在未来版本明确该问题为错误(Error), 所以将 PathConst 由伴生对象修改为单例对象以避免该问题. --- scalabot-app/src/main/kotlin/AppConfigs.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scalabot-app/src/main/kotlin/AppConfigs.kt b/scalabot-app/src/main/kotlin/AppConfigs.kt index 7f581de..7360dfa 100644 --- a/scalabot-app/src/main/kotlin/AppConfigs.kt +++ b/scalabot-app/src/main/kotlin/AppConfigs.kt @@ -231,9 +231,9 @@ internal enum class AppPaths( return path } - private companion object PathConst { - private const val PROP_DATA_PATH = "bot.path.data" - private const val ENV_DATA_PATH = "BOT_DATA_PATH" + private object PathConst { + const val PROP_DATA_PATH = "bot.path.data" + const val ENV_DATA_PATH = "BOT_DATA_PATH" } }