CloudFormation에서 "java.lang.ClassNotFoundException: com.example.package.resource.HandlerWrapper" 오류를 해결하려면 어떻게 해야 하나요?

최종 업데이트 날짜: 2022년 9월 19일

AWS CloudFormation에서 내 리소스 공급자를 호출하려고 하면 다음 오류가 발생합니다.

"java.lang.ClassNotFoundException: com.example.package.resource.HandlerWrapper"

간략한 설명

해결 방법

기본적으로 .jar 파일의 이름은 organization-service-resource-handler-1.0-SNAPSHOT.jar 형식이며 프로젝트의 루트 디렉토리에 있는 pom.xml 파일에 구성됩니다. 예시:

<groupId>com.organization.service.resource</groupId>
<artifactId>organization-service-resource-handler</artifactId>
<name>organization-service-resource-handler</name>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>

프로젝트를 빌드하려면 cfn 생성(cfn generate)를 실행하세요. 그런 다음 mvn 패키지(mvn package)를 실행합니다. 예시:

$ cfn generate
Generated files for Organization::Service::Resource
$ mvn package
[INFO] Scanning for projects...
[INFO] 
[INFO] --< software.organization.service.resource:organization-service-resource-handler >--
[INFO] Building organization-service-resource-handler 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  21.690 s
[INFO] Finished at: 2020-07-14T16:02:47-05:00
[INFO] ------------------------------------------------------------------------

참고: 빌드 및 테스트에 성공하면 mvn이 필요한 .jar 파일을 /target/ 디렉토리에 생성합니다.

유닛 테스트가 완료되지 않았을 때 테스트를 건너뛰려면 mvn package 대신 mvn -Dmaven.test.skip=true package를 실행합니다.

$ cfn generate
Generated files for Organization::Service::Resource
$ mvn package -Dmaven.test.skip=true package
[INFO] Scanning for projects...
[INFO] 
[INFO] --< software.organization.service.resource:organization-service-resource-handler >--
[INFO] Building organization-service-resource-handler 1.0-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  21.690 s
[INFO] Finished at: 2020-07-14T16:02:47-05:00
[INFO] ------------------------------------------------------------------------

팁: 프로젝트의 루트 디렉토리에서 /target/surefire-reports 디렉토리로 이동하여 테스트 문제를 해결할 수 있습니다.


AWS CloudFormation CLI(GitHub 웹 사이트에서 제공)

이 문서가 도움이 되었습니까?


결제 또는 기술 지원이 필요하세요?