0

「JetS3t」を使用して Amazon S3 バケットに接続しようとしています。Quartz プラグインも使用しています。grails-app/jobs に S3 にアクセスしたいジョブがありますが、2 行目にエラーが表示されます。

AWSCredentials awsCredentials = new AWSCredentials(grailsApplication.config.s3.accessKey, grailsApplication.config.s3.secretKey)

S3Service s3Service = new RestS3Service(awsCredentials)

エラーは次のとおりです。

ERROR listeners.ExceptionPrinterJobListener  - Exception occurred in job: null
Message: java.lang.NoClassDefFoundError: com/jamesmurty/utils/XMLBuilder

サービスを作成し、そこに S3 をセットアップする必要がありますか?

4

1 に答える 1

0

これは私のために働く:

def aws_credentials = {
        return new AWSCredentials(grailsApplication.config.aws.accessKey, grailsApplication.config.aws.secretKey)
    }

    def s3_service = {
        return new RestS3Service(aws_credentials())
    }

    def test = {
        def buckets = s3_service().listAllBuckets()
        System.out.println("How many buckets to I have in S3? " + myBuckets.length);
    }

もちろん、オブジェクトを複数のメソッドに配置する必要はありません。必要に応じて使用してください。

また、次のインポートがあることを確認してください。

import org.jets3t.service.impl.rest.httpclient.RestS3Service
import org.jets3t.service.security.AWSCredentials
于 2013-05-20T19:09:04.283 に答える