Windows Azure Java SDK 0.4.6, CloudTableClient отсутствует функция GetTableReference
Когда я использую следующее, чтобы создать таблицу в 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, и это отлично сработало для меня. Но хотелось бы обновить библиотеку для лучшей обработки ошибок.
Кто-нибудь сталкивался с такой же проблемой? Любая помощь приветствуется!
2 ответа
Я просто попытался с помощью следующего кода, и он работал нормально для меня:
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();
}
}
и на скриншоте ниже показаны все библиотеки, на которые я ссылался
После подсказки, что это работает в небольшой программе, я начал шаг за шагом копировать мой код и библиотеки из проекта, который не работал, в небольшой проект, который работает.
Я заметил, что когда я скопировал все свои библиотеки в новый проект, он перестал работать. Затем я увидел, что у меня есть старая библиотека Azure 0.2.2 в моей директории lib. Этот не был в пути сборки, поэтому он скомпилирован отлично и везде работал, кроме создания новой таблицы.
Когда я удаляю свою старую лазурную библиотеку, все работает как шарм.
Спасибо за помощь.