Maison > Java > javaDidacticiel > Comment indexer des classes dans des modules externes pour Quarkus ?

Comment indexer des classes dans des modules externes pour Quarkus ?

Barbara Streisand
Libérer: 2024-12-09 10:13:11
original
296 Les gens l'ont consulté

How to Index Classes in External Modules for Quarkus?

Indexation Quarkus Jandex pour les classes de modules externes

Cette enquête aborde le défi de l'indexation des classes dans un module externe pour Quarkus. Plus précisément, l'utilisateur rencontre un message d'avertissement indiquant que certaines classes ne sont pas incluses dans l'index Jandex, entraînant des problèmes de réflexion. Notre objectif est d'explorer des méthodologies pour ajouter cette dépendance d'indexation à Quarkus.

Quarkus indexe automatiquement le module principal, mais pour les modules supplémentaires contenant des beans, des entités ou des sérialisations JSON, une indexation explicite est requise. Diverses options sont disponibles :

Plugin Jandex Maven

Pour les modules que vous souhaitez indexer, ajoutez ce qui suit au pom.xml :

  <plugin>
    <groupId>io.smallrye</groupId>
    <artifactId>jandex-maven-plugin</artifactId>
    <executions>
      <execution>
        <id>make-index</id>
        <goals>
          <goal>jandex</goal>
        </goals>
      </execution>
    </executions>
  </plugin>
Copier après la connexion

Cette méthode est idéale pour les dépendances externes pour lesquelles vous souhaitez une création d'index unique.

Jandex Plugin Gradle

Dans les environnements Gradle, il existe un plugin tiers pour générer des index Jandex : https://github.com/kordamp/jandex-gradle-plugin.

Empty META-INF/beans.xml

Ajout d'un vide META-INF/beans.xml dans le module supplémentaire src/main/resources déclenchera l'indexation.

Indexation d'autres dépendances

Pour les dépendances que vous ne pouvez pas modifier, ajoutez des entrées à application.properties :

quarkus.index-dependency.<name>.group-id=<group-id>
quarkus.index-dependency.<name>.artifact-id=<artifact-id>
quarkus.index-dependency.<name>.classifier=<classifier> (optional)
Copier après la connexion

Ici, est un identifiant unique pour la dépendance.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal