Lors de l'intégration de classes de modules externes dans votre application Quarkus, vous pouvez rencontrer un avertissement indiquant que les classes ne sont pas enregistrées dans l'index Jandex. Cet avertissement peut survenir lorsque le module externe contient des beans ou des entités CDI qui doivent être indexés par Quarkus.
Quarkus utilise l'index Jandex pour optimiser le processus de réflexion et améliorer les performances. En indexant les classes, Quarkus peut détecter et utiliser la présence d'annotations, telles que @Entity ou @ApplicationScoped, sans avoir à effectuer une réflexion d'exécution coûteuse.
Pour résoudre l'avertissement et assurer une bonne indexation des classes de modules externes, vous disposez de plusieurs options :
Pour les projets basés sur Maven, installez le plugin Jandex Maven dans le pom.xml du module externe. Ce plugin générera un index Jandex pendant le processus de construction, garantissant que les classes nécessaires sont incluses.
</p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false"><build> <plugins> <plugin> <groupId>io.smallrye</groupId> <artifactId>jandex-maven-plugin</artifactId> <executions> <execution> <goals> <goal>jandex</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
L'ajout d'un fichier META-INF/beans.xml vide dans le module externe déclenchera également l'indexation par Quarkus lui-même.
Si la modification du module externe n'est pas réalisable, vous pouvez définir les dépendances d'index dans votre application.properties comme suit :
<br>quarkus. index-dependency.<name>.group-id=<br>quarkus.index-dependency.<name>.artifact-id=<br>quarkus.index-dependency.<name>.classifier=(facultatif) <br>
Remplacer
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!