{"id":15710305,"url":"https://github.com/aws/aws-lambda-java-libs","last_synced_at":"2025-05-13T16:11:26.484Z","repository":{"id":32269651,"uuid":"35844242","full_name":"aws/aws-lambda-java-libs","owner":"aws","description":"Official mirror for interface definitions and helper classes for Java code running on the AWS Lambda platform.","archived":false,"fork":false,"pushed_at":"2025-04-22T09:53:08.000Z","size":32682,"stargazers_count":535,"open_issues_count":62,"forks_count":238,"subscribers_count":54,"default_branch":"main","last_synced_at":"2025-04-23T20:59:05.225Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://aws.amazon.com/lambda/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aws.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-05-18T21:43:45.000Z","updated_at":"2025-04-22T09:53:12.000Z","dependencies_parsed_at":"2024-06-11T16:15:40.034Z","dependency_job_id":"02babb69-cd15-4182-a04c-43eecdf306e9","html_url":"https://github.com/aws/aws-lambda-java-libs","commit_stats":{"total_commits":269,"total_committers":74,"mean_commits":3.635135135135135,"dds":0.8252788104089219,"last_synced_commit":"6538136ecaefa884d23a821c55ab48ca7deeaa3e"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws%2Faws-lambda-java-libs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws%2Faws-lambda-java-libs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws%2Faws-lambda-java-libs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws%2Faws-lambda-java-libs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aws","download_url":"https://codeload.github.com/aws/aws-lambda-java-libs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250514767,"owners_count":21443208,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-03T21:05:52.831Z","updated_at":"2025-04-23T20:59:11.694Z","avatar_url":"https://github.com/aws.png","language":"C++","funding_links":[],"categories":["Serverless","Open Source Repos"],"sub_categories":["Lambda"],"readme":"# AWS Lambda Java Support Libraries\nKey libraries for running Java on the AWS Lambda platform.\n\nFor issues and questions, you can start with our [FAQ](https://aws.amazon.com/lambda/faqs/)\nand the AWS questions and answer site [re:Post](https://repost.aws/tags/TA5uNafDy2TpGNjidWLMSxDw/aws-lambda)\n\nTo get started writing Lambda functions in Java, check out the official [developer guide](https://docs.aws.amazon.com/lambda/latest/dg/lambda-java.html).\n\nFor information on how to optimize your functions watch the re:Invent talk [Optimize your Java application on AWS Lambda](https://www.youtube.com/watch?v=sVJOJUD0fhQ).\n\n## Core Java Lambda interfaces - aws-lambda-java-core\n\n[![Maven](https://img.shields.io/maven-central/v/com.amazonaws/aws-lambda-java-core.svg?label=Maven)](https://central.sonatype.com/artifact/com.amazonaws/aws-lambda-java-core)\n\nThis package defines the Lambda [Context](http://docs.aws.amazon.com/lambda/latest/dg/java-context-object.html) object\nas well as [interfaces](http://docs.aws.amazon.com/lambda/latest/dg/java-handler-using-predefined-interfaces.html) that Lambda accepts.\n\n- [Release Notes](aws-lambda-java-core/RELEASE.CHANGELOG.md)\n\nExample request handler\n\n```java\npublic class Handler implements RequestHandler\u003cMap\u003cString, String\u003e, String\u003e{\n @Override\n public String handleRequest(Map\u003cString, String\u003e event, Context context) {\n\n }\n}\n```\n\nExample request stream handler\n\n```java\npublic class HandlerStream implements RequestStreamHandler {\n  @Override\n  public void handleRequest(InputStream inputStream, OutputStream outputStream, Context context) throws IOException {\n\n  }\n}\n```\n\n```xml\n\u003cdependency\u003e\n \u003cgroupId\u003ecom.amazonaws\u003c/groupId\u003e\n \u003cartifactId\u003eaws-lambda-java-core\u003c/artifactId\u003e\n \u003cversion\u003e1.2.3\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Java objects of Lambda event sources - aws-lambda-java-events\n\n[![Maven](https://img.shields.io/maven-central/v/com.amazonaws/aws-lambda-java-events.svg?label=Maven)](https://central.sonatype.com/artifact/com.amazonaws/aws-lambda-java-events)\n\nThis package defines [event sources](http://docs.aws.amazon.com/lambda/latest/dg/intro-invocation-modes.html) that Lambda natively accepts.\nSee the [documentation](aws-lambda-java-events/README.md) for a list of currently supported event sources.\nUsing this library you can have Java objects which represent event sources.\n\nFor example an SQS event:\n\n```java\nimport com.amazonaws.services.lambda.runtime.events.SQSEvent;\n\npublic class SqsHandler implements RequestHandler\u003cSQSEvent, String\u003e {\n\n @Override\n public String handleRequest(SQSEvent event, Context context) {\n\n }\n}\n```\n\n- [Release Notes](aws-lambda-java-events/RELEASE.CHANGELOG.md)\n\n```xml\n\u003cdependency\u003e\n \u003cgroupId\u003ecom.amazonaws\u003c/groupId\u003e\n \u003cartifactId\u003eaws-lambda-java-events\u003c/artifactId\u003e\n \u003cversion\u003e3.15.0\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Java Lambda JUnit Support - aws-lambda-java-tests\n\n[![Maven](https://img.shields.io/maven-central/v/com.amazonaws/aws-lambda-java-tests.svg?label=Maven)](https://central.sonatype.com/artifact/com.amazonaws/aws-lambda-java-tests)\n\nThis package provides utils to ease Lambda Java testing. It uses the same Lambda serialisation logic and `aws-lambda-java-events` to inject events in your JUnit tests.\n\n- [Release Notes](aws-lambda-java-tests/RELEASE.CHANGELOG.md)\n\n```java\n@ParameterizedTest\n@Event(value = \"sqs/sqs_event.json\", type = SQSEvent.class)\npublic void testInjectSQSEvent(SQSEvent event) {\n        ...\n}\n```\n\n```xml\n\u003cdependency\u003e\n  \u003cgroupId\u003ecom.amazonaws\u003c/groupId\u003e\n  \u003cartifactId\u003eaws-lambda-java-tests\u003c/artifactId\u003e\n  \u003cversion\u003e1.1.1\u003c/version\u003e\n  \u003cscope\u003etest\u003c/scope\u003e\n\u003c/dependency\u003e\n```\n\n## aws-lambda-java-events-sdk-transformer\n\n[![Maven](https://img.shields.io/maven-central/v/com.amazonaws/aws-lambda-java-events-sdk-transformer.svg?label=Maven)](https://central.sonatype.com/artifact/com.amazonaws/aws-lambda-java-events-sdk-transformer)\n\nThis package provides helper classes/methods to use alongside `aws-lambda-java-events` in order to transform\nLambda input event model objects into SDK-compatible output model objects.\nSee the [documentation](aws-lambda-java-events-sdk-transformer/README.md) for more information.\n\n- [Release Notes](aws-lambda-java-events-sdk-transformer/RELEASE.CHANGELOG.md)\n\n```xml\n\u003cdependency\u003e\n \u003cgroupId\u003ecom.amazonaws\u003c/groupId\u003e\n \u003cartifactId\u003eaws-lambda-java-events-sdk-transformer\u003c/artifactId\u003e\n \u003cversion\u003e3.1.0\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Java Lambda Log4J2 support - aws-lambda-java-log4j2\n\n[![Maven](https://img.shields.io/maven-central/v/com.amazonaws/aws-lambda-java-log4j2.svg?label=Maven)](https://central.sonatype.com/artifact/com.amazonaws/aws-lambda-java-log4j2)\n\nThis package defines the Lambda adapter to use with Log4J version 2.\nSee the [README](aws-lambda-java-log4j2/README.md) or the [official documentation](http://docs.aws.amazon.com/lambda/latest/dg/java-logging.html#java-wt-logging-using-log4j) for information on how to use the adapter.\n\n- [Release Notes](aws-lambda-java-log4j2/RELEASE.CHANGELOG.md)\n\n```xml\n\u003cdependency\u003e\n \u003cgroupId\u003ecom.amazonaws\u003c/groupId\u003e\n \u003cartifactId\u003eaws-lambda-java-log4j2\u003c/artifactId\u003e\n \u003cversion\u003e1.6.0\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Lambda Profiler Extension for Java - aws-lambda-java-profiler\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"experimental/aws-lambda-java-profiler/docs/example-cold-start-flame-graph-small.png\" alt=\"A flame graph of a Java Lambda function\"\u003e\n\u003c/p\u003e\n\nThis project allows you to profile your Java functions invoke by invoke, with high fidelity, and no code changes. It \nuses the [async-profiler](https://github.com/async-profiler/async-profiler) project to produce profiling data and \nautomatically uploads the data as flame graphs to S3.\n\nFollow our [Quick Start](experimental/aws-lambda-java-profiler#quick-start) to profile your functions.\n\n## Java implementation of the Runtime Interface Client API - aws-lambda-java-runtime-interface-client\n[![Maven](https://img.shields.io/maven-central/v/com.amazonaws/aws-lambda-java-runtime-interface-client.svg?label=Maven)](https://central.sonatype.com/artifact/com.amazonaws/aws-lambda-java-runtime-interface-client)\n\nThis package defines the Lambda Java Runtime Interface Client package, a Lambda Runtime component that starts the runtime and interacts with the Runtime API - i.e., it calls the API for invocation events, starts the function code, calls the API to return the response.\nThe purpose of this package is to allow developers to deploy their applications in Lambda under the form of Container Images. See the [README](aws-lambda-java-runtime-interface-client/README.md) for information on how to use the library.\n\n- [Release Notes](aws-lambda-java-runtime-interface-client/RELEASE.CHANGELOG.md)\n\n```xml\n\u003cdependency\u003e\n \u003cgroupId\u003ecom.amazonaws\u003c/groupId\u003e\n \u003cartifactId\u003eaws-lambda-java-runtime-interface-client\u003c/artifactId\u003e\n \u003cversion\u003e2.6.0\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Java Lambda provided serialization support - aws-lambda-java-serialization\n\n[![Maven](https://img.shields.io/maven-central/v/com.amazonaws/aws-lambda-java-serialization.svg?label=Maven)](https://central.sonatype.com/artifact/com.amazonaws/aws-lambda-java-serialization)\n\nThis package defines the Lambda serialization logic using in the `aws-lambda-java-runtime-client` library. It has no current standalone usage.\n\n- [Release Notes](aws-lambda-java-serialization/RELEASE.CHANGELOG.md)\n\n```xml\n\u003cdependency\u003e\n \u003cgroupId\u003ecom.amazonaws\u003c/groupId\u003e\n \u003cartifactId\u003eaws-lambda-java-serialization\u003c/artifactId\u003e\n \u003cversion\u003e1.1.5\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n## Disclaimer of use\n\nEach of the supplied packages should be used without modification. Removing\ndependencies, adding conflicting dependencies, or selectively including classes\nfrom the packages can result in unexpected behavior.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faws%2Faws-lambda-java-libs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faws%2Faws-lambda-java-libs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faws%2Faws-lambda-java-libs/lists"}