AEM Cloud Manager部署因缺少Apache Tika套件匯入而失敗

本文說明如何在Adobe Experience Manager Cloud Manager環境中解決因自訂應用程式套件組合中缺少Apache Tika套件匯入所導致的部署管道故障。

說明 description

環境

  • Adobe Experience Manager (AEM) as a Cloud Service
  • Cloud Manager

問題/症狀

  • 部署步驟期間,部署管道在QA環境中失敗。

  • 所有先前的管道步驟(建置、程式碼品質、影像建置、轉換工作和索引更新)都成功完成。

  • 部署失敗,並出現錯誤訊息,指出容器尚未就緒。

  • AEM發佈記錄檔會顯示與PDF擷取功能相關的重複OSGi Framework錯誤,例如:

    • NoClassDefFoundError: org/apache/tika/io/IOExceptionWithCause
    • ClassNotFoundException: org.apache.tika.io.IOExceptionWithCause not found
  • 平台提供的Apache Tika組合(org.apache.tika.coreorg.apache.tika.parsers)存在且作用中。

  • 自訂應用程式套件組合未匯入必要的org.apache.tika.*套件,導致參照Tika類別時發生類別載入失敗。

  • 在受影響環境的每個管道執行中,該問題都是可重現的。

原因

部署管道失敗,因為自訂應用程式套件組合沒有匯入必要的Apache Tika套件,在服務啟動期間導致類別載入錯誤。

解決方法 resolution

若要修正因缺少Apache Tika套件匯入所導致的部署失敗,請執行下列步驟:

  1. 編輯受影響套件組合的Import-Package區段,以明確匯入所有必要的org.apache.tika.*套件,例如org.apache.tika.io

  2. 範例(在bnd.bnd或同等專案中):

    Import-Package: org.apache.tika.io, org.apache.tika.*

  3. 確保該套件組合不會內嵌其自身的Apache Tika版本。 依賴平台提供的Tika套件組合來避免版本衝突。

  4. 透過Cloud Manager管道提交和部署更新的套件組合。

  5. 在AEM Web Console中,確認自訂套件組合已列為org.apache.tika.core的匯入套件。

  6. 確認記錄中未出現Tika類別的NoClassDefFoundErrorClassNotFoundException

  7. 驗證PDF擷取和相關服務是否啟動,且沒有OSGi框架錯誤。

recommendation-more-help
experience-cloud-kcs-help-kbarticles