Home > Java > javaTutorial > How can I index external classes in Quarkus using Jandex?

How can I index external classes in Quarkus using Jandex?

Barbara Streisand
Release: 2024-11-21 00:57:14
Original
497 people have browsed it

How can I index external classes in Quarkus using Jandex?

How Can I Add Jandex Index-Dependencies into Quarkus to Index Classes in an External Module?

Context

When developing a Quarkus application with a multi-module maven hierarchy, classes from external modules might not be properly indexed by default, leading to warnings during startup. To resolve this issue, adding these classes to the Jandex index is necessary.

Solution

There are several methods to index external classes for Quarkus:

Using the Jandex Maven Plugin

For the Maven:

To index an external module using the Jandex Maven plugin, add the following to its 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>
Copy after login

Using the Empty META-INF/beans.xml File

Adding an empty META-INF/beans.xml file to the external module's src/main/resources will trigger Quarkus to index its classes.

Indexing Other Dependencies

For third-party dependencies that cannot be modified, you can add an entry to application.properties:

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

Replace with a unique identifier for the dependency.

The above is the detailed content of How can I index external classes in Quarkus using Jandex?. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template