gpt4 book ai didi

amazon-web-services - Grails AWS SDK 插件无法解析 PutObjectRequest

转载 作者:行者123 更新时间:2023-12-02 15:23:37 25 4
gpt4 key购买 nike

我正在尝试让我的 grails 应用程序与 Amazon S3 一起工作,我一直在关注以下文档... http://agorapulse.github.io/grails-aws-sdk/guide/single.html

在以下步骤amazonWebService.s3.putObject(new PutObjectRequest('some-grails-bucket', 'somePath/someKey.jpg', new File('/Users/ben/Desktop/photo.jpg')).withCannedAcl(CannedAccessControlList.PublicRead))
项目无法解析类 PutObjectRequest , 我已经尝试导入 com.amazonaws.services.s3.model.PutObjectRequest手动,但它仍然找不到类。我唯一能想到的就是我可能有一个旧版本的 SDK,尽管我只按照教程进行操作。

我的 BuildConfig.groovy ...

...
dependencies{
//dependencies for amazon aws plugin
build 'org.apache.httpcomponents:httpcore:4.3.2'
build 'org.apache.httpcomponents:httpclient:4.3.2'
runtime 'org.apache.httpcomponents:httpcore:4.3.2'
runtime 'org.apache.httpcomponents:httpclient:4.3.2'
}
plugins{
...
runtime ':aws-sdk:1.9.40'
}

有没有其他人遇到这个问题并有解决方案?

最佳答案

我不使用插件,我只是直接使用SDK。不知道你需要一个插件来做什么。你不需要 httpcomponents 来工作

将此添加到您的依赖项 block 中:

compile('com.amazonaws:aws-java-sdk-s3:1.10.2') {
exclude group: 'com.fasterxml.jackson.core'
}

这是我用的 bean 。我在bean配置中设置了key、access、bucket数据
class AmazonStorageService implements FileStorageService {


String accessKeyId
String secretAccessKey
String bucketName

AmazonS3Client s3client

@PostConstruct
private void init() {
s3client = new AmazonS3Client(new BasicAWSCredentials(accessKeyId, secretAccessKey));
}

String upload(String name, InputStream inputStream) {
s3client.putObject(new PutObjectRequest(bucketName, name, inputStream, null).withCannedAcl(CannedAccessControlList.PublicRead));
getUrl(name)
}

String upload(String name, byte[] data) {
upload(name, new ByteArrayInputStream(data))
}

String getUrl(String name) {
s3client.getUrl(bucketName, name)
}

Boolean exists(String name) {
try {
s3client.getObjectMetadata(bucketName, name)
true
} catch(AmazonServiceException e) {
false
}
}

}

关于amazon-web-services - Grails AWS SDK 插件无法解析 PutObjectRequest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31639273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com