首頁 >Java >java教程 >如何解決 Quarkus 中外部模組類別的 Jandex 索引問題?

如何解決 Quarkus 中外部模組類別的 Jandex 索引問題?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-13 04:35:02969瀏覽

How to Resolve Jandex Indexing Issues for External Module Classes in Quarkus?

Quarkus 中外部模組類的Jandex 索引

背景

背景

在多模組中在多模組中在多模組中Maven 專案結構中,一個模組中的JAX-RS 端點依賴外部模組中定義的類別是很常見的。但是,Quarkus 可能會發出警告,指示無法為這些類別建立索引以進行反射。

解決方案

要解決此問題並確保正確索引:

  • 選項1:Jandex Maven 外掛程式
  •       <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>
    將Jandex Maven 外掛程式加入包含要索引的類別的模組的pom.xml 中。

    這會執行產生必要的 Jandex 索引的目標。

  • 選項 2:Jandex Gradle 外掛程式(僅限 Gradle)

利用第三個 -用於產生索引的 Jandex Gradle 外掛程式。 根據 GitHub 儲存庫指南在 Gradle 腳本中設定插件。

  • 選項3:清空META-INF/beans .xml

在外部模組的src/main/resources 目錄下建立一個空的META-INF/beans.xml 檔案。 Quarkus 會自動索引模組的

  • 選項4:Quarkus 應用程式屬性

    quarkus.index-dependency.<name>.group-id=
    quarkus.index-dependency.<name>.artifact-id=
    quarkus.index-dependency.<name>.classifier=(optional)
  • 對於無法修改🎜>對於無法修改的外部依賴項,您可以透過新增手動索引它們application.properties 檔案中的項目:

取代帶有您為依賴項選擇的識別碼。 透過實現這些選項中的任何一個,您可以確保必要的類別被正確索引,並且反射可以成功地對它們進行操作。

以上是如何解決 Quarkus 中外部模組類別的 Jandex 索引問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn