目前我只想将 Java AWS SDK 用于 S3。
因此,我不想导入整个 AWS SDK jar 文件,我只想将访问 S3 存储桶所需的包导入到我的 Web 应用程序(IDE:Netbeans)中。
为此,我读到我应该使用 Maven 来构建我需要的 jar。
我尝试了两种方法,但似乎无法在我正在构建的 jar 中包含所有 aws-java-sdk-s3 依赖项。
第一种方法
1) 我从 https://github.com/aws/aws-sdk-java 下载压缩的 aws-sdk-java 文件夹
2)我解压到本地文件夹。
3)我导航到控制台中的 aws-java-sdk-s3(即:pom 所在的位置)文件夹,然后键入“mvn clean install”。
虽然这会构建一个 jar 文件(位于 aws-java-sdk-s3/target
中),但该 jar 不包含 POM 文件中指定的依赖项(例如:它不包含我需要的核心包中的 BasicAWSCredentials 类)。
第二种方法
更改位于 aws-java-sdk-master 文件夹中的 POM 文件,以便它导入 BOM 并通过添加以下内容来指定我的要求 (S3):
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-bom</artifactId>
<version>1.10.67</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>com.amazonaws</groupId>
<artifactId>aws-java-sdk-s3</artifactId>
</dependency>
</dependencies>
并删除 POM 中列出的所有其他依赖项(例如:junit)。
这种方法在构建 DynamoDB 包时失败,我什至不需要它来构建(我想指定它只需要 S3)。
关于我做错了什么的任何建议?
也许这里的主要问题是我是 Maven 的新手。
谢谢
最佳答案
您可以直接从 maven 下载您感兴趣的 Jar:
http://central.maven.org/maven2/com/amazonaws/aws-java-sdk-s3/1.10.66/aws-java-sdk-s3-1.10.66.jar
使用您要使用的 sdk 版本更新 URL,您只需在项目中导入 jar,无需重建它