# Minecraft-ApolloSync **Repository Path**: mcvrc/minecraft-apollo-sync ## Basic Information - **Project Name**: Minecraft-ApolloSync - **Description**: 基于Apollo配置中心同步并管理我的世界服务器集群配置 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-03-28 - **Last Updated**: 2025-03-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: paper, plugin, apollo, 配置中心 ## README # Minecraft-ApolloSync #### 介绍 基于Apollo配置中心同步并管理我的世界服务器集群配置的插件,目前已经支持预加载配置,即静态同步配置,修改配置后需要重启服务器,不支持配置热更新并应用,欢迎大家贡献自己的想法 #### 软件架构 该插件采用Apollo开放平台API实现,即ApolloOpenAPIClient Java库,为了保证能够正确的预加载配置,使用了JavaAgent实现,使用时需要指定JavaAgent参数。 #### 启动流程: ApolloSync先于我的世界服务器启动,从Apollo拉取配置并保存为文件(如server.properties,spigot.yml) ↓ 我的世界服务端启动,并读取预先保存的配置并应用 #### 使用说明 1. 使用前需提前创建Apollo应用,并上传配置好的我的世界服务器配置,即NameSpace,建议创建配置时,使用公共配置选项,即Public,私有配置也可,但目前没有对私有配置选项做测试,所以不清楚是否有问题,是否自动添加部门前缀,请不要勾选,不然可能会导致名称和我的世界默认读取的配置文件名称不同!! ![](README-Images/%E5%88%9B%E5%BB%BANameSpace-2.png) 2. 在完成Apollo应用创建并上传配置后,请在Apollo的管理页面移步至“管理员工具”→“开放平台授权管理”对ApolloSync插件进行Apollo开放平台授权,因为参数apollo.token需要此授权提供的访问密钥,才能正常预加载配置 * 跳转至开放平台授权管理 ![输入图片说明](README-Images/%E5%BC%80%E6%94%BE%E5%B9%B3%E5%8F%B0%E6%8E%88%E6%9D%83%E7%AE%A1%E7%90%86.jpg) * 选择创建第三方应用 ![输入图片说明](README-Images/%E5%88%9B%E5%BB%BA%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%94%E7%94%A8.png) * 填入相关信息 ![输入图片说明](README-Images/%E5%BC%80%E6%94%BE%E5%B9%B3%E5%8F%B0%E7%AC%AC%E4%B8%89%E6%96%B9%E5%BA%94%E7%94%A8%E6%8E%88%E6%9D%83.jpg) * 复制token ![输入图片说明](README-Images/%E5%A4%8D%E5%88%B6token.png) #### 安装教程 1. 将下载后好的ApolloSync.jar放入Plugins中 2. 启动时添加JavaAgent参数(参数说明见下方参数详解↓)如 -javaagent:/to/path/ApolloSync-1.0-SNAPSHOT.jar=app.id=你的Apollo的AppId,apollo.portalUrl=你的Apollo开放平台地址,apollo.token=你的Apollo开放平台授权应用密钥 #### 参数详解 * -javaagent: ----指定ApolloSync插件所在目录,这个是确保能够预先从Apollo加载配置的关键,javaagent后面的冒号":"是必须的,且要求是英文的冒号,ApolloSync插件所在目录最好是填写绝对路径,以防报错,第一个等于号“=”也是必须的,之后的格式为:参数名称=值 * app.id ----这里填写之前创建应用的AppId * apollo.portalUrl ----这里填写你的 Apollo Config Services的地址,也就是你Apollo后台管理的地址 * apollo.token ----这里填写获取在开放平台获取到的token #### 常见问题与回答(FAQ) 一. 如何创建Apollo应用? 第一步需要创建项目。 1. 打开apollo-portal主页 2. 点击“创建项目”,如果没有则选择"创建应用",对应英文名称为“Create Project” ![create-app-entry](https://cdn.jsdelivr.net/gh/apolloconfig/apollo@master/doc/images/create-app-entry.png) 3. 输入项目信息 * 部门:选择应用所在的部门 * 应用AppId:用来标识应用身份的唯一id,格式为string,需要和客户端app.properties中配置的app.id对应 * 应用名称:应用名,仅用于界面展示 * 应用负责人:选择的人默认会成为该项目的管理员,具备项目权限管理、集群创建、Namespace创建等权限 ![create-app](https://cdn.jsdelivr.net/gh/apolloconfig/apollo@master/doc/images/create-app.png) 4. 点击提交 创建成功后,会自动跳转到项目首页 ![app-created](https://cdn.jsdelivr.net/gh/apolloconfig/apollo@master/doc/images/app-created.png) 二. 如何创建NameSpace?即配置文件 在完成创建应用后,点击左侧栏的“添加NameSpace”,即可创建,建议创建配置时,使用公共配置选项,即Public,需要注意配置名称和服务端配置名称相同,且服务端的配置格式与创建配置时使用的格式相同,不然服务端无法正常加载在Apollo上传的配置,且不要勾选自动添加部门前缀,不然可能会导致名称和我的世界默认读取的配置文件名称不同!! ![输入图片说明](README-Images/%E6%B7%BB%E5%8A%A0NameSpace-1.png) ![输入NameSpace名称,格式和备注(可选),并使用Public类型和取消勾选自动添加部门前缀](README-Images/%E5%88%9B%E5%BB%BANameSpace-2.png) 三. 如何上传配置? Apollo提供了文本模式批量添加、修改,因此将预先准备好的配置粘贴至此即可,这里以默认创建的Application 配置为例,在实际使用中需要注意配置名称和服务端配置名称相同,且服务端的配置格式与创建配置时使用的格式相同,不然服务端无法正常加载在Apollo上传的配置 ![输入图片说明](README-Images/%E6%B7%BB%E5%8A%A0NameSpace-1.png) 1. 切换到文本编辑模式 ![text-mode-config-overview](https://cdn.jsdelivr.net/gh/apolloconfig/apollo@master/doc/images/text-mode-config-overview.png) 2. 点击右侧的修改配置按钮 ![text-mode-config-entry](https://cdn.jsdelivr.net/gh/apolloconfig/apollo@master/doc/images/text-mode-config-entry.png) 3. 输入配置项,并点击提交修改,提交修改后不要忘记点击发布生效哦! ![text-mode-config-submit](https://cdn.jsdelivr.net/gh/apolloconfig/apollo@master/doc/images/text-mode-config-submit.png)