Apache Tika 패키지 가져오기 누락으로 인해 AEM Cloud Manager 배포에 실패했습니다.
이 문서에서는 사용자 정의 애플리케이션 번들에서 Apache Tika 패키지 가져오기 누락으로 인해 발생한 Adobe Experience Manager Cloud Manager 환경의 배포 파이프라인 오류를 해결하는 방법에 대해 설명합니다.
설명 description
환경
- Adobe Experience Manager (AEM) as a Cloud Service
- Cloud Manager
문제/증상
-
배포 단계 동안 QA 환경에서 배포 파이프라인이 실패합니다.
-
모든 이전 파이프라인 단계(빌드, 코드 품질, 이미지 빌드, 변환 작업 및 색인 업데이트)가 정상적으로 완료되었습니다.
-
컨테이너가 준비되지 않았음을 나타내는 오류와 함께 배포가 실패합니다.
-
AEM 게시 로그에는 다음과 같은 PDF 추출 기능과 관련된 반복된 OSGi 프레임워크 오류가 표시됩니다.
NoClassDefFoundError: org/apache/tika/io/IOExceptionWithCauseClassNotFoundException: org.apache.tika.io.IOExceptionWithCause not found
-
플랫폼에서 제공한 Apache Tika 번들(
org.apache.tika.core,org.apache.tika.parsers)이 있으며 활성 상태입니다. -
사용자 지정 응용 프로그램 번들이 필수
org.apache.tika.*패키지를 가져오지 않으므로 Tika 클래스를 참조할 때 클래스 로드가 실패합니다. -
영향을 받는 환경의 모든 파이프라인 실행에서 이 문제가 재현될 수 있습니다.
원인
사용자 지정 응용 프로그램 번들이 필요한 Apache Tika 패키지를 가져오지 않으므로 배포 파이프라인이 실패하여 서비스를 시작하는 동안 클래스 로드 오류가 발생합니다.
해결 방법 resolution
Apache Tika 패키지 가져오기 누락으로 인한 배포 오류를 수정하려면 다음 단계를 수행합니다.
-
영향을 받는 번들의 [패키지 가져오기] 섹션을 편집하여
org.apache.tika.io과(와) 같은 필요한 모든org.apache.tika.*패키지를 명시적으로 가져옵니다. -
예(
bnd.bnd또는 이에 해당):Import-Package: org.apache.tika.io, org.apache.tika.* -
번들이 자신의 Apache Tika 버전을 포함하지 않는지 확인합니다. 버전이 충돌하지 않도록 플랫폼에서 제공하는 Tika 번들을 사용하십시오.
-
Cloud Manager 파이프라인을 통해 업데이트된 번들을 커밋하고 배포합니다.
-
AEM 웹 콘솔에서 사용자 지정 번들이
org.apache.tika.core의 가져오는 번들로 나열되어 있는지 확인하십시오. -
Tika 클래스의
NoClassDefFoundError또는ClassNotFoundException이(가) 로그에 표시되지 않는지 확인하십시오. -
PDF 추출 및 관련 서비스가 OSGi 프레임워크 오류 없이 시작되는지 확인합니다.