Maison >Java >javaDidacticiel >Comment puis-je indexer des classes externes dans Quarkus à l'aide de Jandex ?

Comment puis-je indexer des classes externes dans Quarkus à l'aide de Jandex ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-21 00:57:14498parcourir

How can I index external classes in Quarkus using Jandex?

Comment puis-je ajouter des dépendances d'index Jandex dans Quarkus pour indexer des classes dans un module externe ?

Contexte

Lors du développement d'une application Quarkus avec un Dans la hiérarchie Maven multi-modules, les classes des modules externes peuvent ne pas être correctement indexées par défaut, ce qui entraîne des avertissements au démarrage. Pour résoudre ce problème, l'ajout de ces classes à l'index Jandex est nécessaire.

Solution

Il existe plusieurs méthodes pour indexer les classes externes pour Quarkus :

Utilisation du plugin Jandex Maven

Pour le Maven :

Pour indexer un module externe à l'aide du plugin Jandex Maven, ajoutez ce qui suit à son pom.xml :

    <build>
      <plugins>
        <plugin>
          <groupId>io.smallrye</groupId>
          <artifactId>jandex-maven-plugin</artifactId>
          <version>3.1.2</version>
          <executions>
            <execution>
              <id>make-index</id>
              <goals>
                <goal>jandex</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
      </plugins>
    </build>

Utilisation du fichier META-INF/beans.xml vide

L'ajout d'un fichier META-INF/beans.xml vide au src/main/resources du module externe déclenchera l'indexation de ses classes par Quarkus.

Indexation d'autres dépendances

Pour les dépendances tierces qui ne peuvent pas être modifiées, vous pouvez ajouter une entrée à application.properties :

quarkus.index-dependency.<name>.group-id=
quarkus.index-dependency.<name>.artifact-id=
quarkus.index-dependency.<name>.classifier=(optional)

Remplacer avec 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!

Déclaration:
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