
Lexiconfig
这是一个配置API,旨在与其他库一起提供众多集成,并尽可能易于使用,无论是对于开发者还是用户而言。
概述
这是一个配置 API,旨在为多种不同的其他配置库提供兼容性,并使其易于在多加载器项目设置中使用,主要用于我的模组中。
它采用简单易用的基于注解的语法,使创建新的配置文件尽可能简单。
如果你是模组用户,这些信息可能对你没有太大用处。但如果你是模组开发者,并且希望在自己的项目中使用 Lexiconfig,请继续向下滚动到开发部分。
目前它尚不支持其他配置库,但随着我持续更新,我会为每个库添加更多兼容性,以确保它不会与其他库冲突,而是可以在它们之间无缝集成。
以下是当前及计划中的跨不同配置库/API 集成列表:
❌ - 未集成 ✅ - 已集成 ❓ - 进行中
| 状态 | 模组 |
|---|---|
| ❌ | Cloth Config |
| ❌ | oωo config |
| ✅ | Configured |
| ❌ | Forge Config Screens |
开发
此模组包含一个 API,可用于汇总新的词典(lexicons)、监听事件等。
依赖
build.gradle
repositories {
maven { url 'https://maven.codinglitch.com/repository/releases' }
}
dependencies {
implementation "com.codinglitch.lexiconfig:lexiconfig-api:API_VERSION_HERE"
}
你可以前往 https://versions.codinglitch.com 查看最新的 API 版本。
用法
要汇总你自己的词典,首先需要创建你自己的库(Library)。这可以通过简单地创建一个继承 Library 类的新类,并使用 LexiconLibrary 注解对其进行标注来实现。
@LexiconLibrary
public class MyNewLibrary extends Library {
@Override
public void shelveLexicons() {
}
}
在 Forge 环境中,无需进行进一步更改。但是,如果你是为 Fabric 开发,则需要在 fabric.mod.json 中将此类添加为入口点。
fabric.mod.json
//...
"entrypoints": {
"lexiconfig": [
"com.path.to.MyNewLibrary"
]
}
//...
下一步是最终创建并汇总你的词典。你可以通过为词典创建另一个类并为其提供适当的注解来实现,如下所示:
@Lexicon(name = MY_LEXICON_TITLE) // 最好使用你的模组 ID 作为名称
public class MyLexicon extends LexiconData {
@LexiconEntry(comment = "这是一个简单字段的注释!")
public String mySimpleField = "content";
@LexiconPage(comment = "这是一个关于精美新分类的精美新注释!")
public MyNewPage myNewPage = new MyNewPage();
public static class MyNewPage extends LexiconPageData {
@LexiconEntry(comment = "此字段位于词典页面内!")
public Boolean myPageField = true;
}
}
下一步也是最后一步是汇总词典,只需在库中添加一个该词典的实例作为字段,并在给定方法中将其汇总即可。
@LexiconLibrary
public class MyNewLibrary extends Library {
public static MyLexicon MY_LEXICON = new MyLexicon();
@Override
public void shelveLexicons() {
LexiconfigApi.shelveLexicon(MY_LEXICON);
}
}
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。