1
mirror of https://github.com/CarmJos/EasyConfiguration.git synced 2024-09-19 20:25:51 +00:00
轻松(做)配置,简单便捷的通用配置文件加载、读取与更新工具,可自定义配置格式。
Go to file
2023-08-29 02:39:38 +08:00
.documentation 修正示例位置 2022-04-22 13:06:48 +08:00
.github [skip ci] 修改CI名 2022-04-22 13:12:25 +08:00
core feat(map): 支持通过ConfigurationSection创建MapValue。 2023-08-28 17:00:56 +08:00
demo feat(map): 支持通过ConfigurationSection创建MapValue。 2023-08-28 17:00:56 +08:00
impl fix(init): 添加文件初始化测试 #40 2023-08-29 02:39:38 +08:00
.gitignore 初始版本完成 2022-04-17 00:32:33 +08:00
LICENSE [skip-ci] 修改开源协议 2022-04-22 17:44:21 +08:00
pom.xml feat(map): 支持通过ConfigurationSection创建MapValue。 2023-08-28 17:00:56 +08:00
README.md feat(init): 支持针对于实体类的初始化 #9 2022-12-11 02:02:16 +08:00

   ____                _____          ____                    __  _
  / __/__ ____ __ __  / ___/__  ___  / _(_)__ ___ _________ _/ /_(_)__  ___
 / _// _ `(_-</ // / / /__/ _ \/ _ \/ _/ / _ `/ // / __/ _ `/ __/ / _ \/ _ \
/___/\_,_/___/\_, /  \___/\___/_//_/_//_/\_, /\_,_/_/  \_,_/\__/_/\___/_//_/
             /___/                      /___/

EasyConfiguration

version License workflow CodeFactor CodeSize

轻松(做)配置,简单便捷的通用配置文件加载、读取与更新工具,可自定义配置格式。

优势

  • 基于类的配置文件初始化、加载、获取与更新机制,方便快捷。
  • 支持复杂配置的手动序列化、反序列化。
  • 提供多种builder形式快速构建 ConfigValue<?> 对象。
  • 支持通过注解规定配置对应的路径、注释等信息。

开发

详细开发介绍请 点击这里 , JavaDoc(最新Release) 请 点击这里

示例代码

您可以 点击这里 查看部分代码演示,更多演示详见 开发介绍

依赖方式

Maven 依赖

远程库配置

<project>
    <repositories>

        <repository>
            <!--采用Maven中心库安全稳定但版本更新需要等待同步-->
            <id>maven</id>
            <name>Maven Central</name>
            <url>https://repo1.maven.org/maven2</url>
        </repository>
  
        <repository>
            <!--采用github依赖库实时更新但需要配置 (推荐) -->
            <id>EasyConfiguration</id>
            <name>GitHub Packages</name>
            <url>https://maven.pkg.github.com/CarmJos/EasyConfiguration</url>
        </repository>

        <repository>
            <!--采用我的私人依赖库,简单方便,但可能因为变故而无法使用-->
            <id>carm-repo</id>
            <name>Carm's Repo</name>
            <url>https://repo.carm.cc/repository/maven-public/</url>
        </repository>

    </repositories>
</project>
通用原生依赖

<project>
    <dependencies>
        <!--基础实现部分需要自行实现“Provider”与“Wrapper”。-->
        <dependency>
            <groupId>cc.carm.lib</groupId>
            <artifactId>easyconfiguration-core</artifactId>
            <version>[LATEST RELEASE]</version>
            <scope>compile</scope>
        </dependency>

        <!--基于YAML文件的实现版本可用于全部Java环境。-->
        <dependency>
            <groupId>cc.carm.lib</groupId>
            <artifactId>easyconfiguration-yaml</artifactId>
            <version>[LATEST RELEASE]</version>
            <scope>compile</scope>
        </dependency>

        <!--基于JSON文件的实现版本可用于全部Java环境。-->
        <!--需要注意的是JSON不支持文件注释。-->
        <dependency>
            <groupId>cc.carm.lib</groupId>
            <artifactId>easyconfiguration-json</artifactId>
            <version>[LATEST RELEASE]</version>
            <scope>compile</scope>
        </dependency>

    </dependencies>
</project>

Gradle 依赖

远程库配置
repositories {

    // 采用Maven中心库安全稳定但版本更新需要等待同步 
    mavenCentral()
  
    // 采用github依赖库实时更新但需要配置 (推荐)
    maven { url 'https://maven.pkg.github.com/CarmJos/EasyConfiguration' }

    // 采用我的私人依赖库,简单方便,但可能因为变故而无法使用
    maven { url 'https://repo.carm.cc/repository/maven-public/' }
}
通用原生依赖

dependencies {

    //基础实现部分需要自行实现“Provider”与“Wrapper”。
    api "cc.carm.lib:easyconfiguration-core:[LATEST RELEASE]"

    //基于YAML文件的实现版本可用于全部Java环境。
    api "cc.carm.lib:easyconfiguration-yaml:[LATEST RELEASE]"

     //基于JSON文件的实现版本可用于全部Java环境。
    //需要注意的是JSON不支持文件注释。
    api "cc.carm.lib:easyconfiguration-json:[LATEST RELEASE]"

}

衍生项目

MineConfiguration (by @CarmJos )

EasyConfiguration for MineCraft! 开始在 MineCraft 相关服务器平台上轻松(做)配置吧!

目前支持 BungeeCord, Bukkit(Spigot) 服务端,后续将支持更多平台。

支持与捐赠

若您觉得本插件做的不错,您可以通过捐赠支持我!

感谢您对开源项目的支持!

开源协议

本项目源码采用 GNU LESSER GENERAL PUBLIC LICENSE 开源协议。