From d34789da4c61778fd4d1a4956a6203f941bd158a Mon Sep 17 00:00:00 2001 From: Josiah Noel <32279667+SentryMan@users.noreply.github.com> Date: Thu, 24 Oct 2024 15:56:38 -0400 Subject: [PATCH 1/2] fix test event dependency --- .../java/io/avaje/inject/generator/ProcessingContext.java | 5 +++++ .../META-INF/services/io.avaje.inject.spi.InjectExtension | 1 + 2 files changed, 6 insertions(+) create mode 100644 inject-test/src/test/resources/META-INF/services/io.avaje.inject.spi.InjectExtension diff --git a/inject-generator/src/main/java/io/avaje/inject/generator/ProcessingContext.java b/inject-generator/src/main/java/io/avaje/inject/generator/ProcessingContext.java index 7bc08dcab..94ce003b4 100644 --- a/inject-generator/src/main/java/io/avaje/inject/generator/ProcessingContext.java +++ b/inject-generator/src/main/java/io/avaje/inject/generator/ProcessingContext.java @@ -205,6 +205,11 @@ static void processingOver(boolean over) { } static void writeSPIServicesFile() { + + Optional.ofNullable(APContext.getProjectModuleElement()) + .filter(m -> "io.avaje.inject.test".equals(m.getQualifiedName().toString())) + .ifPresent(m -> CTX.get().spiServices.remove(EVENTS_SPI)); + readExistingMetaInfServices(); try { FileObject jfo = createMetaInfWriterFor(Constants.META_INF_SPI); diff --git a/inject-test/src/test/resources/META-INF/services/io.avaje.inject.spi.InjectExtension b/inject-test/src/test/resources/META-INF/services/io.avaje.inject.spi.InjectExtension new file mode 100644 index 000000000..004dff66e --- /dev/null +++ b/inject-test/src/test/resources/META-INF/services/io.avaje.inject.spi.InjectExtension @@ -0,0 +1 @@ +io.avaje.inject.events.spi.ObserverManagerPlugin From f2adf841a80277d8a0830ffe8ed37665461c0573 Mon Sep 17 00:00:00 2001 From: Rob Bygrave Date: Fri, 25 Oct 2024 12:06:58 +1300 Subject: [PATCH 2/2] Only generate META-INF/services/io.avaje.inject.spi.InjectExtension if there are services to register --- .../java/io/avaje/inject/generator/ProcessingContext.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/inject-generator/src/main/java/io/avaje/inject/generator/ProcessingContext.java b/inject-generator/src/main/java/io/avaje/inject/generator/ProcessingContext.java index 94ce003b4..effb1596c 100644 --- a/inject-generator/src/main/java/io/avaje/inject/generator/ProcessingContext.java +++ b/inject-generator/src/main/java/io/avaje/inject/generator/ProcessingContext.java @@ -205,12 +205,15 @@ static void processingOver(boolean over) { } static void writeSPIServicesFile() { - Optional.ofNullable(APContext.getProjectModuleElement()) .filter(m -> "io.avaje.inject.test".equals(m.getQualifiedName().toString())) .ifPresent(m -> CTX.get().spiServices.remove(EVENTS_SPI)); readExistingMetaInfServices(); + if (CTX.get().spiServices.isEmpty()) { + // no services to register + return; + } try { FileObject jfo = createMetaInfWriterFor(Constants.META_INF_SPI); if (jfo != null) {