I have a project that I'm able to run locally, but it fails on AWS. To run the project locally I do sam build and then sam local start-api --host 0.0.0.0. Then I call http://localhost:3000/skill2/task1 and get the hello world response back. When I call the api gateway https://p4x0n2nemc.execute-api.us-east-2.amazonaws.com/Prod/skill2/task1 it fails. The error I see in cloudwatch is
Class not found: helloworld.App: java.lang.ClassNotFoundException
java.lang.ClassNotFoundException: helloworld.App. Current classpath: file:/var/task/
I created the helloworld app with this command and copied it into my AWS Lambda Application.
sam init --name java11-demo-app --runtime java11 --dependency-manager gradle --app-template hello-world
Here is the Github repo for the AWS Lambda Application with the Java resource
https://github.com/bennebbenneb/sample-app
How can I update this AWS Lambda Application so that it creates Java resources in addition to the NodeJS resources? I'm not trying to manually zip up the Java project and upload it. I want the Java code to be built as part of the pipeline.
Local build output sam build
Java Lambda working on localhost
AWS Lambda Applications can be created from the AWS Console. These are CloudFormation projects. https://us-east-2.console.aws.amazon.com/lambda/home?region=us-east-2#/create/application
Error when adding sam build to buildspec.yml




