AWS SDK for Java 2.0是 1.0 的重寫版本,具有一些出色的新功能。與版本 1.0 一樣,它使您能夠輕鬆使用 Amazon Web Services,但還包括非阻塞 IO 和可插入 HTTP 實作等功能,以進一步自訂您的應用程式。您可以在幾分鐘內開始使用Maven或任何支援 MavenCentral 作為工件來源的建置系統。
在開始之前,您需要一個 AWS 帳戶。請參閱開發人員指南的註冊 AWS 部分,以了解如何建立 AWS 帳戶和檢索 AWS 憑證的資訊。
要執行 SDK,您需要Java 1.8+ 。有關 SDK 的要求和最佳設定的更多信息,請參閱開發人員指南的安裝 Java 開發環境部分。
在專案中使用適用於 Java 的 AWS 開發工具包的建議方法是從 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 >
有關更多使用信息,請參閱開發人員指南的設定適用於 Java 的 AWS 開發工具包部分。
提供一種插入您自己的 HTTP 實作的方法。
為非同步客戶端中的非阻塞 IO 提供一流的支援。
從 GitHub 查看程式碼後,您可以使用以下命令建立它。
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
視窗:
./mvnw.cmd clean install
您可以在以下位置找到 v2 的範例程式碼:
it
目錄中,例如:s3-integration-tests 有關開發工具包主要版本及其底層相依性的維護和支援的信息,請參閱 AWS 開發工具包和工具參考指南中的以下內容:
我們保持對長期支援 (LTS) 版本的全面支援:Java 8、Java 11、Java 17 和 Java 21。
我們需要您的幫助來讓這個 SDK 變得更加出色。請透過以下管道提交問題、參與討論論壇和提交拉取請求,參與社區並為這項工作做出貢獻:
感謝這些優秀的人(表情符號鍵):
蘇利斯 | 奧斯汀·布魯克斯 | 康拉德·克托索·馬拉夫斯基 | 安德魯霍普金斯 | 亞當·托馬斯 | 史蒂文·斯沃 | 凱裡·伯吉斯 | |
阿努拉格·阿格拉瓦爾 | 傑弗爾德 | 鮑里斯 | 紀堯姆·科雷 | 亨利·揚德爾 | 瑞安·施密特 | 索馬亞 | |
史蒂文·艾茨 | 史蒂文·黃 | 托馬斯·埃倫特 | 威爾·埃里克森 | 朱利安·霍勞 | 石賢菜 | 阿德里安尼斯托爾 | |
孫賢 | 安德烈亞斯·謝加 | 安東·葉戈羅夫 | 羅埃克斯伯 | 布拉靈頓 | 克里斯多福·拉德克 | 福伊沃斯 | |
弗蘭克·韋斯曼 | 蓋爾蓋伊·瓦爾加 | 吉列爾莫 | 亨利·海基寧 | 約亨·沙蘭達 | 喬·巴內特 | 世良一宏 | |
克里希納·柴坦尼亞·甘塔 | 李帕克漢姆 | 馬泰奧·卡拉拉 | 麥可沙普 | 米格爾·希門尼斯 | 拉塞爾·博勒斯 | 拉塞爾·謝勒 | |
史考特 | 上岡慎也 | 壽司拉馬松 | 湯姆劉4uber | 弗拉基米爾·奧拉尼 | 胡新宇 | 約瑟夫·費特爾 | |
丹尼斯·科納赫維奇 | 亞歷克斯·韋貝爾 | 瑞安·卡珀 | 喬納森漢森 | 黛博拉·N·伊藤 | 布雷特·安布羅斯 | 安娜·卡琳·莎蘭德 | |
約翰·維加斯 | 東吉·阿格尼爾 | 馬修米勒 | 班傑明·梅澤爾斯 | 泉州 | 王佐伊 | 瓦倫·南迪 | |
安德魯·肖爾 | 凱爾·湯姆森 | 薩姆·芬克 | 喬納森邦德 | ajs139 | 杜威阮 | 大衛萊恩 | |
麥可李 | 貝內特·林奇 | 蘆峰一光 | 劉傑米 | 吉列普b10 | 洛倫茲鎳 | 楊艾琳 | |
羅伯托·泰利 | 阿爾文·西 | 羅恩1 | 賽·庫馬爾·雷迪·錢杜帕特拉 | 何大衛 | 托馬斯·特瑞爾-克羅夫特 | 史蒂文·單 | |
巴里·奧尼爾 | 安迪·基斯勒 | 馬丁 | 保羅·利伊蒂埃 | 塞巴斯蒂安·克羅克塞爾 | 大衛·內格雷特 | 史蒂芬·弗萊文 | |
奧利維爾·阿普林 | 阿德里安·切萊博斯 | 查德威爾遜 | 馬尼什戴特 | 丹尼斯·基塞爾霍斯特 | 尼爾什 PS | 史蒂文·斯沃茨 | |
麥可·迪姆查克 | 尼基塔·索科洛夫 | 曼努埃爾·菅原 | 阿尼魯德 | 海登貝克 | 傑庫瑪·戈薩爾 | 麥可·格雷布 | |
麥可·格倫迪 | 埃卡德·米利希 | 托比亞斯·索洛申科 | 路易斯·馬德里加爾 | 基里爾·柴金 | 普拉泰克大桶 | 伯樂1155 | 托馬斯法爾 |
該項目遵循所有貢獻者規範。歡迎任何形式的貢獻!