AWS re:Postを使用することにより、以下に同意したことになります AWS re:Post 利用規約

CloudFormation の「java.lang.ClassNotFoundException: com.example.package.resource.HandlerWrapper」エラーを解決する方法を教えてください。

所要時間2分
0

AWS CloudFormation でリソースプロバイダーを呼び出そうとすると、「java.lang.ClassNotFoundException: com.example.package.resource.HandlerWrapper」というエラーが表示されます。

解決策

リソースタイプのスキーマファイルを開発またはテストするときは、cfn test または sam local invoke を呼び出します。プロジェクトの /target/ ディレクトリに有効な .jar ファイルが含まれていない場合は、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 generate を実行してから mvn package を実行します。

cfn generateGenerated 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 によって /target/ ディレクトリに .jar ファイルが作成されます。

ユニットテストのまだ完了していないテストをスキップするには、mvn package の代わりに mvn -Dmaven.test.skip=true package を実行します。

cfn generateGenerated 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 ディレクトリを開きます。

リソースプロバイダーに関連するその他のエラーについては、以下の記事を参照してください。

関連情報

GitHub ウェブサイト上の CloudFormation CLI

AWS公式
AWS公式更新しました 2ヶ月前
コメントはありません

関連するコンテンツ