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 {
val registrars = mutableSetOf<String>()
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<Jar>("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<JavaCompile> {
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"))
}

View file

@ -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<VersionedServiceRegistrar> registrars = ServiceLoader.load(VersionedServiceRegistrar.class, cl);
ServiceLoader<VersionedServiceRegistrar> 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.");