|
62 | 62 | import io.quarkus.deployment.builditem.nativeimage.NativeImageResourceBuildItem; |
63 | 63 | import io.quarkus.deployment.builditem.nativeimage.NativeImageResourceBundleBuildItem; |
64 | 64 | import io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem; |
| 65 | +import io.quarkus.deployment.builditem.nativeimage.ServiceProviderBuildItem; |
65 | 66 | import io.quarkus.deployment.pkg.builditem.CurateOutcomeBuildItem; |
66 | 67 | import io.quarkus.narayana.jta.deployment.NarayanaInitBuildItem; |
67 | 68 | import io.quarkus.runtime.configuration.ConfigurationException; |
@@ -89,6 +90,7 @@ void build( |
89 | 90 | List<JdbcDriverBuildItem> jdbcDriverBuildItems, |
90 | 91 | BuildProducer<ReflectiveClassBuildItem> reflectiveClass, |
91 | 92 | BuildProducer<NativeImageResourceBuildItem> resource, |
| 93 | + BuildProducer<ServiceProviderBuildItem> service, |
92 | 94 | Capabilities capabilities, |
93 | 95 | BuildProducer<ExtensionSslNativeSupportBuildItem> sslNativeSupport, |
94 | 96 | BuildProducer<AggregatedDataSourceBuildTimeConfigBuildItem> aggregatedConfig, |
@@ -139,6 +141,9 @@ void build( |
139 | 141 | resource.produce(new NativeImageResourceBuildItem( |
140 | 142 | "META-INF/services/" + io.agroal.api.security.AgroalSecurityProvider.class.getName())); |
141 | 143 |
|
| 144 | + // accessed through io.quarkus.agroal.runtime.DataSources.loadDriversInTCCL |
| 145 | + service.produce(ServiceProviderBuildItem.allProvidersFromClassPath(Driver.class.getName())); |
| 146 | + |
142 | 147 | reflectiveClass.produce(ReflectiveClassBuildItem.builder(io.agroal.pool.ConnectionHandler[].class.getName(), |
143 | 148 | io.agroal.pool.ConnectionHandler.class.getName(), |
144 | 149 | io.agroal.api.security.AgroalDefaultSecurityProvider.class.getName(), |
|
0 commit comments