GitHub - aws/aws-sdk-java-v2: The official AWS SDK for Java - Version 2 (original) (raw)

AWS SDK for Java 2.0

Build Status Maven codecov

All Contributors

The AWS SDK for Java 2.0 is a rewrite of 1.0 with some great new features. As with version 1.0, it enables you to easily work with Amazon Web Services but also includes features like non-blocking IO and pluggable HTTP implementation to further customize your applications. You can get started in minutes using Maven or any build system that supports MavenCentral as an artifact source.

Getting Started

Sign up for AWS

Before you begin, you need an AWS account. Please see the Sign Up for AWS section of the developer guide for information about how to create an AWS account and retrieve your AWS credentials.

Minimum requirements

To run the SDK you will need Java 1.8+. For more information about the requirements and optimum settings for the SDK, please see the Installing a Java Development Environmentsection of the developer guide.

Using the SDK

The recommended way to use the AWS SDK for Java in your project is to consume it from Maven Central.

Importing the BOM

To automatically manage module versions (currently all modules have the same version, but this may not always be the case) we recommend you use the Bill of Materials import as follows:

software.amazon.awssdk bom 2.31.38 pom import

Then individual modules may omit the version from their dependency statement:

software.amazon.awssdk ec2 software.amazon.awssdk s3 software.amazon.awssdk dynamodb

Individual Services

Alternatively you can add dependencies for the specific services you use only:

software.amazon.awssdk ec2 2.31.38 software.amazon.awssdk s3 2.31.38

Whole SDK

You can import the whole SDK into your project (includes ALL services). Please note that it is recommended to only import the modules you need.

software.amazon.awssdk aws-sdk-java 2.31.38

See the Set up the AWS SDK for Java section of the developer guide for more usage information.

New Features for 2.0

Building From Source

Once you check out the code from GitHub, you can build it using the following commands.

Linux:

./mvnw clean install

Skip tests, checkstyles, findbugs, etc for quick build

./mvnw clean install -P quick

Build a specific service module

./mvnw clean install -pl :s3 -P quick --am

Windows:

Sample Code

You can find sample code for v2 in the following places:

Maintenance and Support for SDK Major Versions

For information about maintenance and support for SDK major versions and their underlying dependencies, see the following in the AWS SDKs and Tools Reference Guide:

Maintenance and Support for Java Versions

We maintain full support on Long-Term Support(LTS) releases: Java 8, Java 11, Java 17, and Java 21. Note that there may be individual features in newer releases that are not supported, because the SDK must be compatible with Java 8.

Giving Feedback

We need your help in making this SDK great. Please participate in the community and contribute to this effort by submitting issues, participating in discussion forums and submitting pull requests through the following channels:

Contributors ✨

Thanks goes to these wonderful people (emoji key):

sullis sullisπŸ’» Austin Brooks Austin BrooksπŸ’» Konrad `ktoso` Malawski Konrad `ktoso` MalawskiπŸ’» Andrew Hopkins Andrew HopkinsπŸ’» Adam Thomas Adam ThomasπŸ’» Steven Swor Steven SworπŸ’» Carey Burgess Carey BurgessπŸ’»
Anuraag Agrawal Anuraag AgrawalπŸ’» jeffalder jeffalderπŸ’» Boris BorisπŸ’» Guillaume CorrΓ© Guillaume CorrΓ©πŸ’» Henri Yandell Henri YandellπŸ’» Ryan Schmitt Ryan SchmittπŸ’» Somaya SomayaπŸ’»
Steven Aerts Steven AertsπŸ’» Steven Wong Steven WongπŸ’» Tomasz Elendt Tomasz ElendtπŸ’» Will Erickson Will EricksonπŸ’» Julien Hoarau Julien HoarauπŸ’» SEOKHYOENCHOI SEOKHYOENCHOIπŸ’» adriannistor adriannistorπŸ’»
Xian Sun Xian Sun πŸ’» Andreas Scheja Andreas SchejaπŸ’» Anton Egorov Anton EgorovπŸ’» roexber roexberπŸ’» brharrington brharringtonπŸ’» Christopher Radek Christopher RadekπŸ’» Foivos FoivosπŸ’»
Frank Wesemann Frank WesemannπŸ’» Gergely Varga Gergely VargaπŸ’» Guillermo GuillermoπŸ’» Henry Heikkinen Henry HeikkinenπŸ’» Jochen Schalanda Jochen SchalandaπŸ’» Joe Barnett Joe BarnettπŸ’» Kazuhiro Sera Kazuhiro SeraπŸ’»
Krishna Chaithanya Ganta Krishna Chaithanya GantaπŸ’» Lee Packham Lee PackhamπŸ’» Matteo Carrara Matteo CarraraπŸ’» Michael Scharp Michael ScharpπŸ’» Miguel Jimenez Miguel JimenezπŸ’» Russell Bolles Russell BollesπŸ’» Russell Scheerer Russell ScheererπŸ’»
Scott ScottπŸ’» Shin'ya Ueoka Shin'ya UeokaπŸ’» sushilamazon sushilamazonπŸ’» tomliu4uber tomliu4uberπŸ’» Vladimir Orany Vladimir OranyπŸ’» Xinyu Hu Xinyu HuπŸ’» Yosef Fertel Yosef FertelπŸ’»
Denys Konakhevych Denys KonakhevychπŸ’» Alex Weibel Alex WeibelπŸ’» Ryan Carper Ryan CarperπŸ’» Jonathan M. Henson Jonathan M. HensonπŸ’» Debora N. Ito Debora N. ItoπŸ’» Bret Ambrose Bret AmbroseπŸ’» Anna-Karin Salander Anna-Karin SalanderπŸ’»
John Viegas John ViegasπŸ’» Dongie Agnir Dongie AgnirπŸ’» Matthew Miller Matthew MillerπŸ’» Benjamin Maizels Benjamin MaizelsπŸ’» Quan Zhou Quan ZhouπŸ’» Zoe Wang Zoe WangπŸ’» Varun Nandi Varun NandiπŸ’»
Andrew Shore Andrew ShoreπŸ’» Kyle Thomson Kyle ThomsonπŸ’» Sam Fink Sam FinkπŸ’» Jonathan Bond Jonathan BondπŸ’» ajs139 ajs139πŸ’» Dewey Nguyen Dewey NguyenπŸ’» David Leen David LeenπŸ’»
Michael Li Michael LiπŸ’» Bennett Lynch Bennett LynchπŸ’» Ikko Ashimine Ikko AshimineπŸ“– Jamie Liu Jamie LiuπŸ“– guillepb10 guillepb10πŸ’» Lorenz Nickel Lorenz NickelπŸ“– Erin Yang Erin YangπŸ’»
Roberto Tyley Roberto TyleyπŸ’» Alvin See Alvin SeeπŸ’» ron1 ron1πŸ’» Sai Kumar Reddy Chandupatla Sai Kumar Reddy ChandupatlaπŸ’» David Ho David HoπŸ’» Thomas Turrell-Croft Thomas Turrell-CroftπŸ’» Steven Shan Steven ShanπŸ’»
Barry O'Neill Barry O'NeillπŸ’» Andy Kiesler Andy KieslerπŸ’» Martin MartinπŸ’» Paulo Lieuthier Paulo LieuthierπŸ’» SΓ©bastien Crocquesel SΓ©bastien CrocqueselπŸ’» David Negrete David NegreteπŸ’» Stephen Flavin Stephen FlavinπŸ’»
Olivier L Applin Olivier L ApplinπŸ’» Adrian Chlebosz Adrian ChleboszπŸ’» Chad Wilson Chad WilsonπŸ’» Manish Dait Manish DaitπŸ“– Dennis Kieselhorst Dennis KieselhorstπŸ’» Nilesh PS Nilesh PSπŸ’» Steven Swartz Steven SwartzπŸ’»
Michael Dimchuk Michael DimchukπŸ’» Nikita Sokolov Nikita SokolovπŸ’» Manuel Sugawara Manuel SugawaraπŸ’» Anirudh AnirudhπŸ’» Hayden Baker Hayden BakerπŸ’» Jaykumar Gosar Jaykumar GosarπŸ’» Michael Graeb Michael GraebπŸ’»
Michael Grundie Michael GrundieπŸ’» Eckard MΓΌhlich Eckard MΓΌhlichπŸ’» Tobias Soloschenko Tobias SoloschenkoπŸ’» Luis Madrigal Luis MadrigalπŸ“– Kirill Chaykin Kirill ChaykinπŸ’» prateek-vats prateek-vatsπŸ’» Bole1155 Bole1155πŸ’»
Thomas Farr Thomas FarrπŸ’» Saranya Somepalli Saranya SomepalliπŸ’» Ran Vaknin Ran VakninπŸ’» Greg Oledzki Greg OledzkiπŸ’» Kevin Stich Kevin StichπŸ’»

This project follows the all-contributors specification. Contributions of any kind welcome!