Estou usando simplejavamail no meu aplicativo Quarkus. Tenho a biblioteca e seu módulo batch incluídos no meu pom.xml:
<dependency>
<groupId>org.simplejavamail</groupId>
<artifactId>simple-java-mail</artifactId>
<version>8.12.4</version>
</dependency>
<dependency>
<groupId>org.simplejavamail</groupId>
<artifactId>batch-module</artifactId>
<version>8.12.4</version>
</dependency>
Meu código funciona bem no ambiente de desenvolvimento, mas depois de construir a imagem nativa, recebo este erro:
org.simplejavamail.internal.moduleloader.ModuleLoaderException: Batch module not found, make sure it is on the classpath (https://github.com/bbottema/simple-java-mail/tree/develop/modules/batch-module)
at org.simplejavamail.internal.moduleloader.ModuleLoader.loadModule(ModuleLoader.java:133)
at org.simplejavamail.internal.moduleloader.ModuleLoader.loadBatchModule(ModuleLoader.java:95)
at org.simplejavamail.mailer.internal.MailerGenericBuilderImpl.determineDefaultExecutorService(MailerGenericBuilderImpl.java:674)
at org.simplejavamail.mailer.internal.MailerGenericBuilderImpl.buildOperationalConfig(MailerGenericBuilderImpl.java:319)
at org.simplejavamail.mailer.internal.MailerImpl.<init>(MailerImpl.java:128)
at org.simplejavamail.mailer.internal.MailerRegularBuilderImpl.buildMailer(MailerRegularBuilderImpl.java:212)
Tentei registrar a classe BatchModule para reflexão, mas sem sucesso:
import io.quarkus.runtime.annotations.RegisterForReflection;
import org.simplejavamail.internal.modules.BatchModule;
@RegisterForReflection(targets = {
BatchModule.class
})
public class LibReflectionRegister {
}
Como posso corrigir isso?
PS: Não sei se esse problema está relacionado a essa propriedade que defini para resolver outro erro de compilação:
quarkus:
native:
additional-build-args: "--initialize-at-run-time=org.simplejavamail.internal.util.MiscUtil"