Problem
Throw an exception message or logger for internationalization. Better adapt to language problems, easy to solve.
|
final override fun onEnable() { |
|
super.onEnable() |
|
val startTime = System.currentTimeMillis() |
|
var failedDependency: PluginDependency? = null |
|
if (enableDependencies.isNotEmpty() && !enableDependencies.all { dependency -> |
|
dependency.canDepended().also { |
|
if (!it) |
|
failedDependency = dependency |
|
} |
|
} |
|
) { |
|
logger.log(Level.SEVERE, "插件加载时依赖失败, 未成功依赖项: ${failedDependency?.name}.") |
|
server.pluginManager.disablePlugin(this) |
|
return |
|
} |
|
try { |
|
enable() |
|
} catch (e: Exception) { |
|
if (enableExceptionDisabled) { |
|
logger.log(Level.SEVERE, "插件已禁用, 由于加载时异常:", e) |
|
server.pluginManager.disablePlugin(this) |
|
return |
|
} else |
|
logger.log(Level.SEVERE, "加载时错误,跳过插件禁用, 异常:", e) |
|
} |
|
val endTime = System.currentTimeMillis() |
|
logger.info("插件 $pluginName v$pluginVersion 成功加载, 总耗时: ${endTime - startTime}ms.") |
|
} |