0

以下を使用して、Azure (Java) でテーブルを作成する場合

CloudStorageAccount storageAccount = CloudStorageAccount.parse(storageConnectionString);
CloudTableClient tableClient = storageAccount.createCloudTableClient();
CloudTable table = tableClient.getTableReference("people");
table.createIfNotExist();

次の例外が発生します。

java.lang.NoSuchMethodError: com.microsoft.windowsazure.services.table.client.CloudTableClient.getTableReference(Ljava/lang/String;)Lcom/microsoft/windowsazure/services/table/client/CloudTable;

次のライブラリを使用します: microsoft-windowsazure-api-0.4.6.jar。テーブルへの他のすべての呼び出しは完全に機能します。

microsoft-windowsazure-api-0.2.2.jar を使用する場合、 createTableIfNotExists メソッドを使用する必要がありましたが、これは私にとっては完璧に機能しました。しかし、障害処理を改善するために lib を更新したいと考えています。

誰かが同じ問題に遭遇しましたか? どんな助けでも大歓迎です!

4

2 に答える 2

0

次のコードを試してみたところ、うまくいきました。

package TestPackage;
import java.net.URISyntaxException;
import java.security.InvalidKeyException;
import com.microsoft.windowsazure.services.core.storage.*;
import com.microsoft.windowsazure.services.table.client.*;

public class TestClass {
    public static void main(String[] args) throws URISyntaxException, StorageException, InvalidKeyException {
        CloudStorageAccount storageAccount =
                CloudStorageAccount.parse("UseDevelopmentStorage=true");

            // Create the table client.
            CloudTableClient tableClient = storageAccount.createCloudTableClient();

            // Create the table if it doesn't exist.
            String tableName = "people";
            CloudTable table = tableClient.getTableReference(tableName);
            table.createIfNotExist();
            //tableClient.createTableIfNotExists(tableName);

            System.console().readLine();
    }

}

以下のスクリーンショットは、私が参照したすべてのライブラリを示しています

ここに画像の説明を入力

于 2013-11-14T12:21:07.837 に答える