跳到主要内容

文件

插件配置目录位于 服务端根目录/plugins/SakuraBind

配置目录

plugins/SakuraBind
│ config.yml 插件基础配置、监听器、送回队列、缓存与命令行为
│ database.yml 暂存箱与日志数据库配置
│ global-setting.yml 全局绑定行为设置
│ lang.yml 语言与消息格式
│ logger.yml 绑定/解绑日志设置
│ send-back-logger.yml 物品送回日志设置
│ placeholders.txt PlaceholderAPI 占位符说明
│ settings.yml 物品匹配器与独立绑定设置

├─data 方块绑定数据;启用方块绑定后不要随意删除
├─backup
│ └─block-cache 方块绑定缓存双快照与异常退出标记
├─database 默认 H2 数据库目录
│ database_sakurabind.mv.db

├─log 文件日志目录
│ bind-log-0-0.log
│ send-back-log-0-0.log
│ unique-log-0-0.log

└─modules 可选模块配置
auto-unbind.yml 独立自动解绑模块
bind-item.yml 绑定/解绑道具模块
migration.yml 旧绑定 lore 迁移模块
unique-item.yml 唯一物品/防刷模块

backup/block-cache 默认包含轮换槽位 ab 和运行标记 running.marker。不要在服务端运行时修改或删除这些文件。它们用于主方块缓存为空且检测到上次 JVM 异常退出时自动恢复,不能替代整服备份。

运行库

插件会在首次启动或切换数据库类型时按需下载运行库,默认目录是 服务端根目录/libraries。下载源在 plugin.ymlruntime-libraries.repositories 中配置,当前模板包含阿里云 Maven 与 Maven Central。

当前源码对应的主要运行库版本:

类型坐标或版本
Kotlinorg.jetbrains.kotlin:kotlin-stdlib:2.4.10kotlin-reflect:2.4.10
Exposedorg.jetbrains.exposed:exposed-core/jdbc/java-time:1.3.1
Ehcacheorg.ehcache:ehcache:3.11.1
HikariCPJava 11+ 下载 7.0.2,Java 8 下载 4.0.3
H2Java 11+ 下载 2.4.240,Java 8 下载 2.2.224
MySQLmysql:mysql-connector-java:5.1.49com.mysql:mysql-connector-j:9.6.0
MariaDBorg.mariadb.jdbc:mariadb-java-client:3.5.7
SQLiteorg.xerial:sqlite-jdbc:3.51.2.0
PostgreSQLorg.postgresql:postgresql:42.7.10
Oraclecom.oracle.database.jdbc:ojdbc8/ojdbc11/ojdbc17:23.26.1.0.0
SQLServercom.microsoft.sqlserver:mssql-jdbc:13.4.0.jre8/jre11

数据库驱动会在 database.yml 选择对应类型后按需下载。实际加载版本以启动日志为准。

依赖无法下载

如果服务器无法联网,可以在另一台网络正常的机器上启动一次同版本插件,复制生成的 libraries 目录到当前服务器。

也可以解压插件 jar,编辑 plugin.yml 中的 runtime-libraries.libraries-folder 后重新打包:

runtime-libraries:
libraries-folder: '@plugin:libraries' # 存放在 plugins/SakuraBind/libraries

加载日志

插件启动时会输出运行库加载结果。[I] 表示隔离加载,[A] 表示共享加载;失败标记通常为 [N] 网络异常、[E] 加载异常、[F] 依赖格式错误。

日志文件

log 目录会随配置生成,但绑定日志、送回日志和唯一物品日志的总开关默认都是关闭的,因此刚安装后日志文件可能是空文件。需要审计或排障时,分别开启:

  • logger.ymlenable
  • send-back-logger.ymlenable
  • modules/unique-item.ymllogger.enable

如果开启 database: true,日志会写入插件数据库;如果开启 file: true,日志才会写入 log 目录下的独立文件。