From f826014c097af9ddba9d254d6ad6a0bf19b72324 Mon Sep 17 00:00:00 2001 From: CarmJos Date: Thu, 9 Jun 2022 00:18:14 +0800 Subject: [PATCH] =?UTF-8?q?refactor(all):=20=E4=BF=AE=E6=94=B9=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E7=BB=93=E6=9E=84=EF=BC=8C=E4=B8=BABungeeYAML?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E6=B3=A8=E9=87=8A=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 项目结构修改,避免使用上的误解。同时为 Bungee(YAML) 支持了注释功能。 BREAKING CHANGE: 包名与入口类变更 1. 项目结构与包名修改 mineconfiguration-bukkit-general -> mineconfiguration-bukkit mineconfiguration-bukkit-native -> mineconfiguration-spigot 2. MineConfiguration入口类变更,现移动到各自平台的包下。 --- README.md | 16 +- common/pom.xml | 26 +-- platform/bukkit/base/pom.xml | 29 +--- platform/bukkit/general/pom.xml | 22 +-- .../{ => bukkit}/MineConfiguration.java | 2 +- platform/bukkit/pom.xml | 12 +- platform/bungee/pom.xml | 18 +-- .../{ => bungee}/MineConfiguration.java | 2 +- .../bungee/source/BungeeConfigProvider.java | 34 +++- .../bungee/source/BungeeSectionWrapper.java | 23 ++- .../bungee/source/BungeeYAMLComments.java | 152 ++++++++++++++++++ platform/bungee/src/test/java/ConfigTest.java | 51 ++++++ platform/{bukkit/native => spigot}/pom.xml | 40 +++-- .../spigot}/MineConfiguration.java | 4 +- .../spigot}/source/SpigotConfigProvider.java | 3 +- pom.xml | 71 ++++---- 16 files changed, 345 insertions(+), 160 deletions(-) rename platform/bukkit/general/src/main/java/cc/carm/lib/mineconfiguration/{ => bukkit}/MineConfiguration.java (96%) rename platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/{ => bungee}/MineConfiguration.java (98%) create mode 100644 platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeYAMLComments.java create mode 100644 platform/bungee/src/test/java/ConfigTest.java rename platform/{bukkit/native => spigot}/pom.xml (56%) rename platform/{bukkit/native/src/main/java/cc/carm/lib/mineconfiguration => spigot/src/main/java/cc/carm/lib/mineconfiguration/spigot}/MineConfiguration.java (91%) rename platform/{bukkit/native/src/main/java/cc/carm/lib/mineconfiguration/bukkit => spigot/src/main/java/cc/carm/lib/mineconfiguration/spigot}/source/SpigotConfigProvider.java (93%) diff --git a/README.md b/README.md index 88a99b3..6f8dce1 100644 --- a/README.md +++ b/README.md @@ -43,19 +43,17 @@ Bukkit系通用依赖,不包含实现部分,请使用 **MineConfiguration-Bu 以上类型可以通过 `CraftConfigValue.builder()` 来创建,部分类型提供了 `of(...);` 方法来快速创建。 -#### **MineConfiguration-Bukkit-General** _(推荐)_ +#### **MineConfiguration-Bukkit** _(推荐)_ 适用于Bukkit的版本,包含以Bukkit为基础的其他服务端 *(如Spigot、Paper、CatServer)* 。 -#### **MineConfiguration-Bukkit-Native** +#### **MineConfiguration-Spigot** 适用于 Spigot(1.18+) 的版本,适配了1.18及以后版本Spigot原生自带的配置文件注释功能,随Spigot更新而优化,安全稳定。 ### **MineConfiguration-Bungee** -适用于BungeeCord的版本,可用JSON与YAML格式,但**不支持配置文件注释**。 - -如需使用配置文件注释,建议使用 [EasyConfiguration-YAML](https://github.com/CarmJos/EasyConfiguration) 。 +适用于BungeeCord的版本,可用JSON与YAML格式。其中JSON格式**不支持配置文件注释**。 ## 开发 @@ -111,14 +109,14 @@ Bukkit系通用依赖,不包含实现部分,请使用 **MineConfiguration-Bu cc.carm.lib - mineconfiguration-bukkit-general + mineconfiguration-bukkit [LATEST RELEASE] compile cc.carm.lib - mineconfiguration-bukkit-native + mineconfiguration-spigot [LATEST RELEASE] compile @@ -164,9 +162,9 @@ repositories { dependencies { - api "cc.carm.lib:mineconfiguration-bukkit-general:[LATEST RELEASE]" + api "cc.carm.lib:mineconfiguration-bukkit:[LATEST RELEASE]" - api "cc.carm.lib:mineconfiguration-bukkit-native:[LATEST RELEASE]" + api "cc.carm.lib:mineconfiguration-spigot:[LATEST RELEASE]" api "cc.carm.lib:mineconfiguration-bungee:[LATEST RELEASE]" diff --git a/common/pom.xml b/common/pom.xml index 75971f2..370a594 100644 --- a/common/pom.xml +++ b/common/pom.xml @@ -5,12 +5,12 @@ mineconfiguration-parent cc.carm.lib - 1.4.3 + 2.0.0 4.0.0 - ${java.version} - ${java.version} + ${project.jdk.version} + ${project.jdk.version} mineconfiguration-common @@ -23,14 +23,6 @@ compile - - de.themoep - minedown - 1.7.1-SNAPSHOT - compile - true - - net.md-5 bungeecord-chat @@ -43,18 +35,6 @@ - - org.apache.maven.plugins - maven-compiler-plugin - - - org.apache.maven.plugins - maven-jar-plugin - - - org.apache.maven.plugins - maven-source-plugin - org.apache.maven.plugins maven-javadoc-plugin diff --git a/platform/bukkit/base/pom.xml b/platform/bukkit/base/pom.xml index e98d9b5..09c4bf4 100644 --- a/platform/bukkit/base/pom.xml +++ b/platform/bukkit/base/pom.xml @@ -3,50 +3,31 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - mineconfiguration-bukkit + mineconfiguration-bukkit-parent cc.carm.lib - 1.4.3 + 2.0.0 4.0.0 - ${java.version} - ${java.version} + ${project.jdk.version} + ${project.jdk.version} mineconfiguration-bukkit-base jar - - ${project.parent.groupId} - easyconfiguration-core - ${easyconfiguration.version} - compile - - ${project.parent.groupId} mineconfiguration-common ${project.parent.version} compile - + - - org.apache.maven.plugins - maven-compiler-plugin - - - org.apache.maven.plugins - maven-jar-plugin - - - org.apache.maven.plugins - maven-source-plugin - org.apache.maven.plugins maven-javadoc-plugin diff --git a/platform/bukkit/general/pom.xml b/platform/bukkit/general/pom.xml index 33df515..b5a4710 100644 --- a/platform/bukkit/general/pom.xml +++ b/platform/bukkit/general/pom.xml @@ -3,17 +3,17 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - mineconfiguration-bukkit + mineconfiguration-bukkit-parent cc.carm.lib - 1.4.3 + 2.0.0 4.0.0 - ${java.version} - ${java.version} + ${project.jdk.version} + ${project.jdk.version} - mineconfiguration-bukkit-general + mineconfiguration-bukkit jar @@ -29,18 +29,6 @@ - - org.apache.maven.plugins - maven-compiler-plugin - - - org.apache.maven.plugins - maven-jar-plugin - - - org.apache.maven.plugins - maven-source-plugin - org.apache.maven.plugins maven-javadoc-plugin diff --git a/platform/bukkit/general/src/main/java/cc/carm/lib/mineconfiguration/MineConfiguration.java b/platform/bukkit/general/src/main/java/cc/carm/lib/mineconfiguration/bukkit/MineConfiguration.java similarity index 96% rename from platform/bukkit/general/src/main/java/cc/carm/lib/mineconfiguration/MineConfiguration.java rename to platform/bukkit/general/src/main/java/cc/carm/lib/mineconfiguration/bukkit/MineConfiguration.java index fb0b633..a071922 100644 --- a/platform/bukkit/general/src/main/java/cc/carm/lib/mineconfiguration/MineConfiguration.java +++ b/platform/bukkit/general/src/main/java/cc/carm/lib/mineconfiguration/bukkit/MineConfiguration.java @@ -1,4 +1,4 @@ -package cc.carm.lib.mineconfiguration; +package cc.carm.lib.mineconfiguration.bukkit; import cc.carm.lib.mineconfiguration.bukkit.source.BukkitConfigProvider; import org.bukkit.plugin.Plugin; diff --git a/platform/bukkit/pom.xml b/platform/bukkit/pom.xml index 756df95..226ba5b 100644 --- a/platform/bukkit/pom.xml +++ b/platform/bukkit/pom.xml @@ -5,24 +5,22 @@ mineconfiguration-parent cc.carm.lib - 1.4.3 + 2.0.0 ../../pom.xml 4.0.0 - ${java.version} - ${java.version} + ${project.jdk.version} + ${project.jdk.version} - mineconfiguration-bukkit + mineconfiguration-bukkit-parent pom base - general - native - MineConfiguration-Bukkit + MineConfiguration-Bukkit-Parent diff --git a/platform/bungee/pom.xml b/platform/bungee/pom.xml index 523d032..25e2165 100644 --- a/platform/bungee/pom.xml +++ b/platform/bungee/pom.xml @@ -5,13 +5,13 @@ mineconfiguration-parent cc.carm.lib - 1.4.3 + 2.0.0 ../../pom.xml 4.0.0 - ${java.version} - ${java.version} + ${project.jdk.version} + ${project.jdk.version} mineconfiguration-bungee jar @@ -54,18 +54,6 @@ - - org.apache.maven.plugins - maven-compiler-plugin - - - org.apache.maven.plugins - maven-jar-plugin - - - org.apache.maven.plugins - maven-source-plugin - org.apache.maven.plugins maven-javadoc-plugin diff --git a/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/MineConfiguration.java b/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/MineConfiguration.java similarity index 98% rename from platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/MineConfiguration.java rename to platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/MineConfiguration.java index 2fb3841..8d4b69a 100644 --- a/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/MineConfiguration.java +++ b/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/MineConfiguration.java @@ -1,4 +1,4 @@ -package cc.carm.lib.mineconfiguration; +package cc.carm.lib.mineconfiguration.bungee; import cc.carm.lib.mineconfiguration.bungee.source.BungeeConfigProvider; import net.md_5.bungee.api.plugin.Plugin; diff --git a/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeConfigProvider.java b/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeConfigProvider.java index d44e766..b38fbbb 100644 --- a/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeConfigProvider.java +++ b/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeConfigProvider.java @@ -4,25 +4,39 @@ import cc.carm.lib.configuration.core.ConfigInitializer; import cc.carm.lib.configuration.core.source.impl.FileConfigProvider; import net.md_5.bungee.config.Configuration; import net.md_5.bungee.config.ConfigurationProvider; +import net.md_5.bungee.config.YamlConfiguration; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Unmodifiable; +import java.io.BufferedWriter; import java.io.File; import java.io.IOException; +import java.io.StringWriter; +import java.nio.charset.StandardCharsets; +import java.nio.file.Files; +import java.nio.file.Path; import java.util.List; public class BungeeConfigProvider extends FileConfigProvider { + protected static final char SEPARATOR = '.'; + protected ConfigurationProvider loader; protected Configuration configuration; protected ConfigInitializer initializer; - public BungeeConfigProvider(@NotNull File file, ConfigurationProvider loader) { + protected BungeeYAMLComments comments = new BungeeYAMLComments(); + + public BungeeConfigProvider(@NotNull File file, @NotNull ConfigurationProvider loader) { super(file); this.loader = loader; } + public BungeeConfigProvider(@NotNull File file, @NotNull Class providerClass) { + this(file, ConfigurationProvider.getProvider(providerClass)); + } + public void initializeConfig() throws IOException { this.configuration = getLoader().load(file); this.initializer = new ConfigInitializer<>(this); @@ -41,26 +55,36 @@ public class BungeeConfigProvider extends FileConfigProvider comments) { - + this.comments.setHeaderComments(path, comments); } @Override public void setInlineComment(@NotNull String path, @Nullable String comment) { - + this.comments.setInlineComment(path, comment); } @Override public @Nullable @Unmodifiable List getHeaderComment(@Nullable String path) { - return null; + return this.comments.getHeaderComment(path); } @Override public @Nullable String getInlineComment(@NotNull String path) { - return null; + return this.comments.getInlineComment(path); } @Override diff --git a/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeSectionWrapper.java b/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeSectionWrapper.java index 2a5f078..4661a58 100644 --- a/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeSectionWrapper.java +++ b/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeSectionWrapper.java @@ -9,6 +9,8 @@ import org.jetbrains.annotations.Nullable; import java.util.*; import java.util.stream.Collectors; +import static cc.carm.lib.mineconfiguration.bungee.source.BungeeConfigProvider.SEPARATOR; + public class BungeeSectionWrapper implements ConfigurationWrapper { private final Configuration section; @@ -22,14 +24,31 @@ public class BungeeSectionWrapper implements ConfigurationWrapper { return section == null ? null : new BungeeSectionWrapper(section); } + protected static Set getAllKeys(@NotNull Configuration config) { + Set keys = new LinkedHashSet<>(); + for (String key : config.getKeys()) { + keys.add(key); + Object value = config.get(key); + if (value instanceof Configuration) { + getAllKeys((Configuration) value).stream() + .map(subKey -> key + SEPARATOR + subKey).forEach(keys::add); + } + } + return keys; + } + @Override public @NotNull Set getKeys(boolean deep) { - return new LinkedHashSet<>(section.getKeys()); + if (deep) { + return new LinkedHashSet<>(getAllKeys(section)); + } else { + return new LinkedHashSet<>(section.getKeys()); + } } @Override public @NotNull Map getValues(boolean deep) { - return section.getKeys().stream() + return getKeys(deep).stream() .collect(Collectors.toMap(key -> key, section::get, (a, b) -> b, LinkedHashMap::new)); } diff --git a/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeYAMLComments.java b/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeYAMLComments.java new file mode 100644 index 0000000..b88b50e --- /dev/null +++ b/platform/bungee/src/main/java/cc/carm/lib/mineconfiguration/bungee/source/BungeeYAMLComments.java @@ -0,0 +1,152 @@ +package cc.carm.lib.mineconfiguration.bungee.source; + +import net.md_5.bungee.config.Configuration; +import net.md_5.bungee.config.ConfigurationProvider; +import net.md_5.bungee.config.YamlConfiguration; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.jetbrains.annotations.Unmodifiable; + +import java.io.BufferedWriter; +import java.io.IOException; +import java.io.StringWriter; +import java.util.*; +import java.util.stream.Collectors; +import java.util.stream.IntStream; + +import static cc.carm.lib.mineconfiguration.bungee.source.BungeeConfigProvider.SEPARATOR; + +public class BungeeYAMLComments { + + protected final @NotNull Map> headerComments = new HashMap<>(); + protected final @NotNull Map inlineComments = new HashMap<>(); + + protected @NotNull Map> getHeaderComments() { + return headerComments; + } + + protected @NotNull Map getInlineComments() { + return inlineComments; + } + + public void setHeaderComments(@Nullable String path, @Nullable List comments) { + if (comments == null) { + getHeaderComments().remove(path); + } else { + getHeaderComments().put(path, comments); + } + } + + + public void setInlineComment(@NotNull String path, @Nullable String comment) { + if (comment == null) { + getInlineComments().remove(path); + } else { + getInlineComments().put(path, comment); + } + } + + @Nullable + @Unmodifiable + public List getHeaderComment(@Nullable String path) { + return Optional.ofNullable(getHeaderComments().get(path)).map(Collections::unmodifiableList).orElse(null); + } + + public @Nullable String getInlineComment(@NotNull String path) { + return getInlineComments().get(path); + } + + public @Nullable String buildHeaderComments(@Nullable String path, @NotNull String indents) { + List comments = getHeaderComment(path); + if (comments == null || comments.size() == 0) return null; + + StringJoiner joiner = new StringJoiner("\n"); + for (String comment : comments) { + if (comment.length() == 0) joiner.add(" "); + else joiner.add(indents + "# " + comment); + } + return joiner + "\n"; + } + + /** + * 从一个文件读取配置并写入注释到某个写入器中。 + * 该方法的部分源代码借鉴自 tchristofferson/ConfigUpdater 项目。 + * + * @param source 源配置文件 + * @param writer 配置写入器 + * @throws IOException 当写入发生错误时抛出 + */ + public void writeComments(@NotNull Configuration source, @NotNull BufferedWriter writer) throws IOException { + ConfigurationProvider provider = ConfigurationProvider.getProvider(YamlConfiguration.class); + Configuration tmp = new Configuration();// 该对象用于临时记录配置内容 + + String configHeader = buildHeaderComments(null, ""); + if (configHeader != null) writer.write(configHeader); + + for (String fullKey : BungeeSectionWrapper.getAllKeys(source)) { + Object currentValue = source.get(fullKey); + + String indents = getIndents(fullKey); + String headerComments = buildHeaderComments(fullKey, indents); + String inlineComment = getInlineComment(fullKey); + + if (headerComments != null) writer.write(headerComments); + + String[] splitFullKey = fullKey.split("[" + SEPARATOR + "]"); + String trailingKey = splitFullKey[splitFullKey.length - 1]; + + if (currentValue instanceof Configuration) { + Configuration section = (Configuration) currentValue; + writer.write(indents + trailingKey + ":"); + if (inlineComment != null && inlineComment.length() > 0) { + writer.write(" # " + inlineComment); + } + if (!section.getKeys().isEmpty()) { + writer.write("\n"); + } else { + writer.write(" {}\n"); + if (indents.length() == 0) writer.write("\n"); + } + continue; + } + + tmp.set(trailingKey, currentValue); + StringWriter tmpStr = new StringWriter(); + provider.save(tmp, tmpStr); + String yaml = tmpStr.toString(); + tmpStr.close(); + tmp.set(trailingKey, null); + + yaml = yaml.substring(0, yaml.length() - 1); + + if (inlineComment != null && inlineComment.length() > 0) { + if (yaml.contains("\n")) { + // section为多行内容,需要 InlineComment 加在首行末尾 + String[] splitLine = yaml.split("\n", 2); + yaml = splitLine[0] + " # " + inlineComment + "\n" + splitLine[1]; + } else { + // 其他情况下就直接加载后面就好。 + yaml += " # " + inlineComment; + } + } + + writer.write(indents + yaml.replace("\n", "\n" + indents) + "\n"); + if (indents.length() == 0) writer.write("\n"); + } + + writer.close(); + } + + /** + * 得到一个键的缩进。 + * 该方法的源代码来自 tchristofferson/ConfigUpdater 项目。 + * + * @param key 键 + * @return 该键的缩进文本 + */ + protected static String getIndents(String key) { + String[] splitKey = key.split("[" + SEPARATOR + "]"); + return IntStream.range(1, splitKey.length).mapToObj(i -> " ").collect(Collectors.joining()); + } + +} diff --git a/platform/bungee/src/test/java/ConfigTest.java b/platform/bungee/src/test/java/ConfigTest.java new file mode 100644 index 0000000..4e98a01 --- /dev/null +++ b/platform/bungee/src/test/java/ConfigTest.java @@ -0,0 +1,51 @@ +import cc.carm.lib.configuration.core.ConfigurationRoot; +import cc.carm.lib.configuration.core.annotation.HeaderComment; +import cc.carm.lib.configuration.core.annotation.InlineComment; +import cc.carm.lib.configuration.core.source.ConfigurationProvider; +import cc.carm.lib.configuration.core.value.ConfigValue; +import cc.carm.lib.configuration.core.value.type.ConfiguredList; +import cc.carm.lib.configuration.core.value.type.ConfiguredValue; +import cc.carm.lib.mineconfiguration.bungee.MineConfiguration; +import org.junit.Test; + +import java.io.File; +import java.util.List; + +public class ConfigTest { + + + @Test + public void test() { + ConfigurationProvider config = MineConfiguration.from(new File("target/config.yml")); + config.initialize(Configuration.class); + } + + + @HeaderComment({ + "MineConfiguration for BungeeCord", + "测试实例配置文件", "" + }) + public static class Configuration extends ConfigurationRoot { + + @InlineComment("是否显示DEBUG消息") + public static final ConfigValue DEBUG = ConfiguredValue.of(Boolean.class, false); + + @HeaderComment("启动时执行的命令") + public static final class START_UP { + + @HeaderComment("延迟执行的时间(单位:秒)") + public static final ConfigValue DELAY = ConfiguredValue.of(Integer.class, 30); + + @HeaderComment("循环执行的间隔(单位:秒)") + public static final ConfigValue PERIOD = ConfiguredValue.of(Integer.class, 10); + + @HeaderComment("执行的指令列表") + @InlineComment("建议以\"\"包裹") + public static final ConfigValue> COMMANDS = ConfiguredList.builder(String.class) + .fromString().defaults("alert Commands here!").build(); + } + + } + + +} diff --git a/platform/bukkit/native/pom.xml b/platform/spigot/pom.xml similarity index 56% rename from platform/bukkit/native/pom.xml rename to platform/spigot/pom.xml index 1da1024..7e4cc9c 100644 --- a/platform/bukkit/native/pom.xml +++ b/platform/spigot/pom.xml @@ -3,17 +3,18 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - mineconfiguration-bukkit cc.carm.lib - 1.4.3 + mineconfiguration-parent + 2.0.0 + ../../pom.xml 4.0.0 - ${java.version} - ${java.version} + ${project.jdk.version} + ${project.jdk.version} - mineconfiguration-bukkit-native + mineconfiguration-spigot jar @@ -32,22 +33,27 @@ provided + + + + me.clip + placeholderapi + 2.11.1 + provided + + + + + com.comphenix.protocol + ProtocolLib + 4.8.0 + provided + + - - org.apache.maven.plugins - maven-compiler-plugin - - - org.apache.maven.plugins - maven-jar-plugin - - - org.apache.maven.plugins - maven-source-plugin - org.apache.maven.plugins maven-javadoc-plugin diff --git a/platform/bukkit/native/src/main/java/cc/carm/lib/mineconfiguration/MineConfiguration.java b/platform/spigot/src/main/java/cc/carm/lib/mineconfiguration/spigot/MineConfiguration.java similarity index 91% rename from platform/bukkit/native/src/main/java/cc/carm/lib/mineconfiguration/MineConfiguration.java rename to platform/spigot/src/main/java/cc/carm/lib/mineconfiguration/spigot/MineConfiguration.java index e52a0da..aea6d39 100644 --- a/platform/bukkit/native/src/main/java/cc/carm/lib/mineconfiguration/MineConfiguration.java +++ b/platform/spigot/src/main/java/cc/carm/lib/mineconfiguration/spigot/MineConfiguration.java @@ -1,6 +1,6 @@ -package cc.carm.lib.mineconfiguration; +package cc.carm.lib.mineconfiguration.spigot; -import cc.carm.lib.mineconfiguration.bukkit.source.SpigotConfigProvider; +import cc.carm.lib.mineconfiguration.spigot.source.SpigotConfigProvider; import org.bukkit.plugin.Plugin; import java.io.File; diff --git a/platform/bukkit/native/src/main/java/cc/carm/lib/mineconfiguration/bukkit/source/SpigotConfigProvider.java b/platform/spigot/src/main/java/cc/carm/lib/mineconfiguration/spigot/source/SpigotConfigProvider.java similarity index 93% rename from platform/bukkit/native/src/main/java/cc/carm/lib/mineconfiguration/bukkit/source/SpigotConfigProvider.java rename to platform/spigot/src/main/java/cc/carm/lib/mineconfiguration/spigot/source/SpigotConfigProvider.java index c1f91ac..c90b6c6 100644 --- a/platform/bukkit/native/src/main/java/cc/carm/lib/mineconfiguration/bukkit/source/SpigotConfigProvider.java +++ b/platform/spigot/src/main/java/cc/carm/lib/mineconfiguration/spigot/source/SpigotConfigProvider.java @@ -1,6 +1,7 @@ -package cc.carm.lib.mineconfiguration.bukkit.source; +package cc.carm.lib.mineconfiguration.spigot.source; import cc.carm.lib.configuration.core.ConfigInitializer; +import cc.carm.lib.mineconfiguration.bukkit.source.CraftConfigProvider; import org.bukkit.configuration.file.YamlConfiguration; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; diff --git a/pom.xml b/pom.xml index ede0c6a..cfa57cd 100644 --- a/pom.xml +++ b/pom.xml @@ -4,9 +4,9 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 - 1.8 - ${java.version} - ${java.version} + 8 + ${project.jdk.version} + ${project.jdk.version} UTF-8 UTF-8 @@ -14,13 +14,14 @@ cc.carm.lib mineconfiguration-parent - 1.4.3 + 2.0.0 pom common platform/bungee platform/bukkit + platform/spigot MineConfiguration @@ -151,6 +152,36 @@ deploy + + org.apache.maven.plugins + maven-compiler-plugin + 3.10.1 + + ${project.jdk.version} + ${project.jdk.version} + UTF-8 + -parameters + + + + + org.apache.maven.plugins + maven-jar-plugin + 3.2.2 + + + org.apache.maven.plugins + maven-source-plugin + 3.2.1 + + + package + + jar-no-fork + + + + @@ -185,38 +216,6 @@ - - org.apache.maven.plugins - maven-compiler-plugin - 3.10.1 - - ${java.version} - ${java.version} - UTF-8 - -parameters - - - - - org.apache.maven.plugins - maven-jar-plugin - 3.2.2 - - - - org.apache.maven.plugins - maven-source-plugin - 3.2.1 - - - package - - jar-no-fork - - - - - org.apache.maven.plugins maven-shade-plugin