簡體   English   中英

嘗試在Azure中創建新存儲桶時出現java.net.UnknownHostException

[英]java.net.UnknownHostException while trying to create new bucket in azure

Exception in thread "main" java.util.NoSuchElementException: An error occurred while enumerating the result, check the original exception for details.
    at com.microsoft.azure.storage.core.LazySegmentedIterator.hasNext(LazySegmentedIterator.java:113)
    at com.test.maven.azureBlob.main(azureBlob.java:47)
Caused by: com.microsoft.azure.storage.StorageException: The server encountered an unknown failure: 
    at com.microsoft.azure.storage.StorageException.translateException(StorageException.java:101)
    at com.microsoft.azure.storage.core.ExecutionEngine.executeWithRetry(ExecutionEngine.java:199)
    at com.microsoft.azure.storage.core.LazySegmentedIterator.hasNext(LazySegmentedIterator.java:109)
    ... 1 more

上面是嘗試從Java創建存儲桶時遇到的異常

以下是代碼公共類azureBlob {public static final String storageConnectionString =“ DefaultEndpointsProtocol = http;” +“ AccountName =;” +“ AccountKey =”;

public static void main(String[] args) throws InvalidKeyException, URISyntaxException, StorageException {
    // TODO Auto-generated method stub
    File sourceFile = null, downloadedFile = null;
    System.out.println("Azure Blob storage quick start sample");

    CloudStorageAccount storageAccount;
    CloudBlobClient blobClient = null;
    CloudBlobContainer container=null;

    storageAccount = CloudStorageAccount.parse(storageConnectionString);
    blobClient = storageAccount.createCloudBlobClient();
    container = blobClient.getContainerReference("quickstartcontainer");

    System.out.println("Creating container: " + container.getName());
    try
    {
    container.createIfNotExists();
    }
    catch (Exception e)
    {
        System.out.println(e.getMessage());
        }

    //Listing contents of container
    for (ListBlobItem blobItem : container.listBlobs()) {
    System.out.println("URI of blob is: " + blobItem.getUri());
}
}

}

我已經測試了您的代碼,並且工作正常。

這是我的代碼供您參考:

import java.net.URISyntaxException;
import java.security.InvalidKeyException;
import com.microsoft.azure.storage.CloudStorageAccount;
import com.microsoft.azure.storage.blob.CloudBlobClient;
import com.microsoft.azure.storage.blob.CloudBlobContainer;
import com.microsoft.azure.storage.blob.ListBlobItem;

public class Main {

    public static final String ConnString="DefaultEndpointsProtocol=https;AccountName=xxxxx;AccountKey=O7xB6ebGq8e86XQSy2vkvSi/x/e9l9xxxxxxxxkly1DsQPYY5dF2JrAVHtBozbJo29ZrrGJA==;EndpointSuffix=core.windows.net";
public static void main(String[] args) {
    // TODO Auto-generated method stub      
    listBlobsOfContainer("mycontainer");
    System.out.println("Success");



}

    public static void listBlobsOfContainer(String containerName) {
        CloudStorageAccount account = null;
        CloudBlobContainer container = null;
        try {
            account = CloudStorageAccount.parse(ConnString);
            CloudBlobClient client = account.createCloudBlobClient();
            container = client.getContainerReference(containerName);
            container.createIfNotExists();
        }catch(Exception ex) {
            ex.printStackTrace();
        }

        for (ListBlobItem blobItem : container.listBlobs()) {
            System.out.println("URI of blob is: " + blobItem.getUri());
        }

    }
}

結果截圖:

在此處輸入圖片說明

請確保使用最新的Java SDK,我使用的Java SDK來自: azure-storage-java

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM