diff --git a/build.gradle.kts b/build.gradle.kts index 51d2127..d71a0b9 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -103,18 +103,12 @@ val prepareServiceFiles = tasks.register("prepareServiceFiles") { doLast { val registrars = mutableSetOf() inputFiles.forEach { file -> - println("Checking file: ${file.absolutePath}, exists: ${file.exists()}") - if (file.exists()) { - val lines = file.readLines().filter { it.isNotBlank() } - println("Found lines: $lines") - registrars.addAll(lines) - } + registrars.addAll(file.readLines().filter { it.isNotBlank() }) } val mergedFile = outputDir.get().file(serviceFile).asFile mergedFile.parentFile.mkdirs() mergedFile.writeText(registrars.joinToString("\n")) - println("Merged service file content: \n${registrars.joinToString("\n")}") } } @@ -128,10 +122,9 @@ tasks.register("bundleAll") { from(prepareServiceFiles) { into("META-INF/services") include("org.adrianvictor.lib.versioning.VersionedServiceRegistrar") - duplicatesStrategy = DuplicatesStrategy.INCLUDE } - duplicatesStrategy = DuplicatesStrategy.INCLUDE + duplicatesStrategy = DuplicatesStrategy.EXCLUDE archiveClassifier.set("all-implementations") archiveVersion.set(project.version.toString()) @@ -169,6 +162,5 @@ tasks.withType { tasks.runServer { minecraftVersion("1.21.1") - // Include ONLY the all-implementations jar as the plugin - pluginJars.setFrom(tasks.named("bundleAll")) + pluginJars.from(tasks.named("jarR1_21")) } \ No newline at end of file diff --git a/src/main/java/org/adrianvictor/lib/Main.java b/src/main/java/org/adrianvictor/lib/Main.java index d10d7fd..6190da1 100644 --- a/src/main/java/org/adrianvictor/lib/Main.java +++ b/src/main/java/org/adrianvictor/lib/Main.java @@ -10,29 +10,19 @@ import java.util.ServiceLoader; public class Main extends JavaPlugin { - static { - System.out.println("Main class loaded!"); - } - private static VersionedServiceFactory versionedServiceFactory; private static VersionMatcher versionMatcher; @Override public void onEnable() { versionMatcher = new VersionMatcher(); + versionedServiceFactory = new DefaultVersionedServiceFactory(versionMatcher); - ClassLoader cl = getClassLoader(); - getLogger().info("Plugin ClassLoader: " + cl.getClass().getName()); - String serviceFile = "META-INF/services/org.adrianvictor.lib.versioning.VersionedServiceRegistrar"; - java.net.URL res = cl.getResource(serviceFile); - getLogger().info("Service file resource: " + res); - - ServiceLoader registrars = ServiceLoader.load(VersionedServiceRegistrar.class, cl); + ServiceLoader registrars = ServiceLoader.load(VersionedServiceRegistrar.class, getClassLoader()); int count = 0; for (VersionedServiceRegistrar registrar : registrars) { registrar.register(versionedServiceFactory); - getLogger().info("Registered registrar: " + registrar.getClass().getName()); count++; } getLogger().info("Registered " + count + " version-specific registrars.");