Compare commits

..

No commits in common. "27a93cdb46" and "0484769372" have entirely different histories.

2 changed files with 5 additions and 23 deletions

View file

@ -103,18 +103,12 @@ val prepareServiceFiles = tasks.register("prepareServiceFiles") {
doLast { doLast {
val registrars = mutableSetOf<String>() val registrars = mutableSetOf<String>()
inputFiles.forEach { file -> inputFiles.forEach { file ->
println("Checking file: ${file.absolutePath}, exists: ${file.exists()}") registrars.addAll(file.readLines().filter { it.isNotBlank() })
if (file.exists()) {
val lines = file.readLines().filter { it.isNotBlank() }
println("Found lines: $lines")
registrars.addAll(lines)
}
} }
val mergedFile = outputDir.get().file(serviceFile).asFile val mergedFile = outputDir.get().file(serviceFile).asFile
mergedFile.parentFile.mkdirs() mergedFile.parentFile.mkdirs()
mergedFile.writeText(registrars.joinToString("\n")) mergedFile.writeText(registrars.joinToString("\n"))
println("Merged service file content: \n${registrars.joinToString("\n")}")
} }
} }
@ -128,10 +122,9 @@ tasks.register<Jar>("bundleAll") {
from(prepareServiceFiles) { from(prepareServiceFiles) {
into("META-INF/services") into("META-INF/services")
include("org.adrianvictor.lib.versioning.VersionedServiceRegistrar") include("org.adrianvictor.lib.versioning.VersionedServiceRegistrar")
duplicatesStrategy = DuplicatesStrategy.INCLUDE
} }
duplicatesStrategy = DuplicatesStrategy.INCLUDE duplicatesStrategy = DuplicatesStrategy.EXCLUDE
archiveClassifier.set("all-implementations") archiveClassifier.set("all-implementations")
archiveVersion.set(project.version.toString()) archiveVersion.set(project.version.toString())
@ -169,6 +162,5 @@ tasks.withType<JavaCompile> {
tasks.runServer { tasks.runServer {
minecraftVersion("1.21.1") minecraftVersion("1.21.1")
// Include ONLY the all-implementations jar as the plugin pluginJars.from(tasks.named("jarR1_21"))
pluginJars.setFrom(tasks.named("bundleAll"))
} }

View file

@ -10,29 +10,19 @@ import java.util.ServiceLoader;
public class Main extends JavaPlugin { public class Main extends JavaPlugin {
static {
System.out.println("Main class loaded!");
}
private static VersionedServiceFactory versionedServiceFactory; private static VersionedServiceFactory versionedServiceFactory;
private static VersionMatcher versionMatcher; private static VersionMatcher versionMatcher;
@Override @Override
public void onEnable() { public void onEnable() {
versionMatcher = new VersionMatcher(); versionMatcher = new VersionMatcher();
versionedServiceFactory = new DefaultVersionedServiceFactory(versionMatcher); versionedServiceFactory = new DefaultVersionedServiceFactory(versionMatcher);
ClassLoader cl = getClassLoader(); ServiceLoader<VersionedServiceRegistrar> registrars = ServiceLoader.load(VersionedServiceRegistrar.class, 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<VersionedServiceRegistrar> registrars = ServiceLoader.load(VersionedServiceRegistrar.class, cl);
int count = 0; int count = 0;
for (VersionedServiceRegistrar registrar : registrars) { for (VersionedServiceRegistrar registrar : registrars) {
registrar.register(versionedServiceFactory); registrar.register(versionedServiceFactory);
getLogger().info("Registered registrar: " + registrar.getClass().getName());
count++; count++;
} }
getLogger().info("Registered " + count + " version-specific registrars."); getLogger().info("Registered " + count + " version-specific registrars.");