I am trying to install twilio for phone authentication, however this is not working
14:47:58,803 ERROR [org.keycloak.services.error.KeycloakErrorHandler] (default task-1) Uncaught server error: java.lang.NoClassDefFoundError: com/twilio/Twilio
at deployment.keycloakauthenticator-1.0-SNAPSHOT.jar//com.gitlab.name.keycloakauthenticator.rest.TwilioProvider.<init>(TwilioProvider.java:13)
at deployment.keycloakauthenticator-1.0-SNAPSHOT.jar//com.gitlab.name.keycloakauthenticator.PhoneVerificationRestProvider.getResource(PhoneVerificationRestProvider.java:17)
at org.keycloak.keycloak-services@13.0.1//org.keycloak.services.resources.RealmsResource.resolveRealmExtension(RealmsResource.java:283)
....
This is my pom with Twilio:
<dependency>
<groupId>com.twilio.sdk</groupId>
<artifactId>twilio</artifactId>
<version>8.14.0</version>
</dependency>
UPDATE:
I have tried to add it to the jar plugin but I have this error which is not really useful:
15:16:03,106 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC000001: Failed to start service jboss.module.service."deployment.keycloakauthenticator-1.0-SNAPSHOT.jar".main: org.jboss.msc.service.StartException in service jboss.module.service."deployment.keycloakauthenticator-1.0-SNAPSHOT.jar".main: WFLYSRV0179: Failed to load module: deployment.keycloakauthenticator-1.0-SNAPSHOT.jar
at org.jboss.as.server@15.0.1.Final//org.jboss.as.server.moduleservice.ModuleLoadService.start(ModuleLoadService.java:116)
at org.jboss.msc@1.4.12.Final//org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1739)
at org.jboss.msc@1.4.12.Final//org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1701)
at org.jboss.msc@1.4.12.Final//org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1559)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1990)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
at org.jboss.threads@2.4.0.Final//org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: org.jboss.modules.ModuleNotFoundException: com.twilio.sdk.twilio
at org.jboss.modules.Module.addPaths(Module.java:1288)
at org.jboss.modules.Module.link(Module.java:1644)
at org.jboss.modules.Module.relinkIfNecessary(Module.java:1672)
at org.jboss.modules.ModuleLoader.loadModule(ModuleLoader.java:303)
at org.jboss.modules.ModuleLoader.loadModule(ModuleLoader.java:287)
at org.jboss.as.server@15.0.1.Final//org.jboss.as.server.moduleservice.ModuleLoadService.start(ModuleLoadService.java:93)
... 8 more
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<archive>
<manifestEntries>
<Dependencies>org.keycloak.keycloak-services, com.twilio.sdk.twilio</Dependencies>
</manifestEntries>
</archive>
</configuration>
</plugin>
</plugins>
</build>
I have tried com.twilio.sdk, com.twilio, com.twilio.Twilio, com.twilio.sdk.twilio, but nothing…