AWS SDK для Java 2.0 — это переработанная версия версии 1.0 с некоторыми замечательными новыми функциями. Как и версия 1.0, она позволяет легко работать с Amazon Web Services, но также включает в себя такие функции, как неблокирующий ввод-вывод и подключаемую реализацию HTTP для дальнейшей настройки ваших приложений. Вы можете начать работу за считанные минуты, используя Maven или любую систему сборки, которая поддерживает MavenCentral в качестве источника артефактов.
Прежде чем начать, вам понадобится учетная запись AWS. Дополнительную информацию о том, как создать учетную запись AWS и получить учетные данные AWS, см. в разделе «Регистрация на AWS» руководства для разработчиков.
Для запуска SDK вам понадобится Java 1.8+ . Дополнительную информацию о требованиях и оптимальных настройках SDK см. в разделе «Установка среды разработки Java» руководства разработчика.
Рекомендуемый способ использования AWS SDK для Java в вашем проекте — использовать его из Maven Central.
Для автоматического управления версиями модулей (в настоящее время все модули имеют одну и ту же версию, но это не всегда так) мы рекомендуем использовать импорт спецификации следующим образом:
< dependencyManagement >
< dependencies >
< dependency >
< groupId >software.amazon.awssdk</ groupId >
< artifactId >bom</ artifactId >
< version >2.29.31</ version >
< type >pom</ type >
< scope >import</ scope >
</ dependency >
</ dependencies >
</ dependencyManagement >
Тогда отдельные модули могут опустить version
в своем заявлении зависимости:
< dependencies >
< dependency >
< groupId >software.amazon.awssdk</ groupId >
< artifactId >ec2</ artifactId >
</ dependency >
< dependency >
< groupId >software.amazon.awssdk</ groupId >
< artifactId >s3</ artifactId >
</ dependency >
< dependency >
< groupId >software.amazon.awssdk</ groupId >
< artifactId >dynamodb</ artifactId >
</ dependency >
</ dependencies >
Альтернативно вы можете добавить зависимости только для конкретных сервисов, которые вы используете:
< dependency >
< groupId >software.amazon.awssdk</ groupId >
< artifactId >ec2</ artifactId >
< version >2.29.31</ version >
</ dependency >
< dependency >
< groupId >software.amazon.awssdk</ groupId >
< artifactId >s3</ artifactId >
< version >2.29.31</ version >
</ dependency >
Вы можете импортировать весь SDK в свой проект (включая ВСЕ сервисы). Обратите внимание, что рекомендуется импортировать только те модули, которые вам нужны.
< dependency >
< groupId >software.amazon.awssdk</ groupId >
< artifactId >aws-sdk-java</ artifactId >
< version >2.29.31</ version >
</ dependency >
Дополнительную информацию об использовании см. в разделе «Настройка AWS SDK для Java» руководства разработчика.
Предоставляет возможность подключить собственную реализацию HTTP.
Обеспечивает первоклассную поддержку неблокирующего ввода-вывода в асинхронных клиентах.
Получив код на GitHub, вы можете собрать его, используя следующие команды.
Линукс:
./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
Окна:
./mvnw.cmd clean install
Пример кода для версии 2 можно найти в следующих местах:
it
под каждым сервисным модулем, например: s3-integration-tests. Информацию об обслуживании и поддержке основных версий SDK и их базовых зависимостей см. в следующем руководстве Справочного руководства по SDK и инструментам AWS:
Мы поддерживаем полную поддержку выпусков с долгосрочной поддержкой (LTS): Java 8, Java 11, Java 17 и Java 21. Обратите внимание, что в новых выпусках могут быть отдельные функции, которые не поддерживаются, поскольку SDK должен быть совместим с Java. 8.
Нам нужна ваша помощь, чтобы сделать этот SDK отличным. Пожалуйста, участвуйте в сообществе и вносите свой вклад в эти усилия, отправляя вопросы, участвуя в дискуссионных форумах и отправляя запросы на включение по следующим каналам:
Спасибо этим замечательным людям (ключ смайлика):
Саллис | Остин Брукс | Конрад `Ктосо` Малавский | Эндрю Хопкинс | Адам Томас | Стивен Свор | Кэри Берджесс | |
Анурааг Агравал | Джеффалдер | Борис | Гийом Корре | Анри Янделл | Райан Шмитт | Сомайя | |
Стивен Аэртс | Стивен Вонг | Томаш Элендт | Уилл Эриксон | Жюльен Оарау | СЕОХЁЕНЧОЙ | Адрианнистор | |
Сиань Сунь | Андреас Шея | Антон Егоров | Роэксбер | Брахаррингтон | Кристофер Радек | Фойвос | |
Франк Веземанн | Гергели Варга | Гильермо | Генри Хейккинен | Йохен Шаланда | Джо Барнетт | Казухиро Сера | |
Кришна Чайтанья Ганта | Ли Пэкхэм | Маттео Каррара | Майкл Шарп | Мигель Хименес | Рассел Боллес | Рассел Ширер | |
Скотт | Шинья Уэока | сушиламазон | tomliu4uber | Владимир Орани | Синьюй Ху | Йосеф Фертель | |
Денис Конахевич | Алекс Вейбель | Райан Карпер | Джонатан М. Хенсон | Дебора Н. Ито | Брет Эмброуз | Анна-Карин Саландер | |
Джон Вьегас | Донги Агнир | Мэтью Миллер | Бенджамин Майзелс | Цюань Чжоу | Зои Ван | Варун Нанди | |
Эндрю Шор | Кайл Томсон | Сэм Финк | Джонатан Бонд | ajs139 | Дьюи Нгуен | Дэвид Лин | |
Майкл Ли | Беннетт Линч | Икко Ашимине | Джейми Лю | гильепб10 | Лоренц Никель | Эрин Янг | |
Роберто Тайли | Элвин Си | рон1 | Сай Кумар Редди Чандупатла | Дэвид Хо | Томас Террелл-Крофт | Стивен Шан | |
Барри О'Нил | Энди Кислер | Мартин | Пауло Льютье | Себастьен Крокезель | Дэвид Негрете | Стивен Флавин | |
Оливье Л. Апплин | Адриан Хлебош | Чад Уилсон | Маниш Дайт | Деннис Кизельхорст | Нилеш ПС | Стивен Шварц | |
Михаил Димчук | Никита Соколов | Мануэль Сугавара | Анирудх | Хайден Бейкер | Джайкумар Госар | Майкл Греб | |
Майкл Гранди | Экард Мюлих | Тобиас Солощенко | Луис Мадригал | Кирилл Чайкин | пратик-чаны | боле1155 | Томас Фарр |
Этот проект соответствует спецификации всех участников. Любой вклад приветствуется!