2017-02-10 16 views
1

私はbellowメソッドを使用してamazon s3サービスに画像ファイルをアップロードしようとしています。しかし、このような例外エラーが発生します。スレッド "スレッド0" java.lang.NoClassDefFoundErrorの中アマゾンサービスに画像をアップロードすることができません

  1. 例外:ORG/apacheの/コモン/ログ/
  2. たLogFactory
  3. によって引き起こさ:java.lang.ClassNotFoundExceptionが:org.apache.commons.logging。たLogFactory

    プライベート静的URL uploadFile(ファイルfile){

    try { 
        JSONObject jsonObject = ApiConnector.getBucketDetails(); 
        JSONObject ob = jsonObject.getJSONObject("result"); 
        System.out.println("JSon result " + ob.toString()); 
    
        fileName = String.valueOf(System.currentTimeMillis()); 
    
    
        BasicAWSCredentials awsCreds = new BasicAWSCredentials(ob.getString("access_key"), ob.getString("secret_key")); 
        client = new AmazonS3Client(awsCreds); 
        newBucket = new Bucket(ob.getString("bucket_name")); 
        PutObjectRequest putObjectRequest = new PutObjectRequest(newBucket.getName(), fileName, file); 
        putObjectRequest.withCannedAcl(CannedAccessControlList.PublicRead); 
        ObjectMetadata objectMetadata = new ObjectMetadata(); 
        objectMetadata.setContentLength(file.length()); 
        putObjectRequest.withMetadata(objectMetadata); 
        client.putObject(putObjectRequest); 
    
        return client.generatePresignedUrl(ob.getString("bucket_name"), fileName, getDate()); 
    } catch (JSONException ex) { 
        ex.printStackTrace(); 
        return null; 
    }} 
    

答えて

0

プロジェクトがfoの依存関係が欠落しているように見えますrはロギングを行います(これは他の依存関係の1つによって参照される可能性があります)。

<dependency> 
    <groupId>commons-logging</groupId> 
    <artifactId>commons-logging</artifactId> 
    <version>1.2</version> 
</dependency> 

あなたはバージョンhereを見ることができます:あなたはpom.xmlで次のように追加してみてくださいすることができます。

更新

プロジェクトは、あなたがcommons logging jarファイルをダウンロードし、libディレクトリ内にそれを配置する必要がありmavenプロジェクトではない場合。 jarファイルはhereからダウンロードできます。

+0

私のJavaプロジェクトにそのファイルを追加してもらえますか?私はNetbeansを使用しています –

+0

私は答えを更新しました.. –

+0

今それは私に別のエラーを与えます。 (1)スレッド "Thread-0"の例外java.lang.NoClassDefFoundError:org/apache/commons/httpclient/methods/PostMethod(2)原因:java.lang.ClassNotFoundException:org.apache.commons.httpclient.methods。 PostMethod –

関連する問題