Java MissingSubscriptionRegistration:订阅未注册为使用命名空间';Microsoft.Storage';
已尝试从Azure Java SDK运行Java MissingSubscriptionRegistration:订阅未注册为使用命名空间';Microsoft.Storage';,java,azure,azure-storage,azure-virtual-machine,azure-java-sdk,Java,Azure,Azure Storage,Azure Virtual Machine,Azure Java Sdk,已尝试从Azure Java SDK运行 VirtualMachine vm = ComputeHelper.createVM( resourceManagementClient, computeManagementClient, networkResourceProviderClient, storageManagementClient, context, "javaSampleVM", "F
VirtualMachine vm = ComputeHelper.createVM(
resourceManagementClient, computeManagementClient, networkResourceProviderClient, storageManagementClient,
context, "javaSampleVM", "Foo12", "BaR@123rgababaab")
.getVirtualMachine();
System.out.println(vm.getName() + " is created");
并得到以下错误
Exception in thread "main" java.util.concurrent.ExecutionException: com.microsoft.windowsazure.exception.ServiceException: MissingSubscriptionRegistration: The subscription is not registered to use namespace 'Microsoft.Storage'.
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:188)
at com.microsoft.azure.management.storage.StorageAccountOperationsImpl.create(StorageAccountOperationsImpl.java:737)
at com.microsoft.azure.utility.StorageHelper.createStorageAccount(StorageHelper.java:71)
at com.microsoft.azure.utility.StorageHelper.createStorageAccount(StorageHelper.java:53)
at com.microsoft.azure.utility.ComputeHelper.createVM(ComputeHelper.java:246)
at com.microsoft.azure.utility.ComputeHelper.createVM(ComputeHelper.java:213)
at com.microsoft.azure.auth.CreateVMExample.main(CreateVMExample.java:74)
因为我是AWS的Azure新手,不知道从哪里开始。看到了与Azure PS相关的类似错误。但没有多大帮助。请提出一些建议。我正在使用Azure Active Directory身份验证。谢谢。您引用的存储帐户名是否可能是旧的存储帐户?如果您转到portal.azure.com,存储帐户将分为两类:存储帐户(经典)和存储帐户。如果您正在引用的帐户位于经典列表中,请尝试创建一个新的存储帐户,然后引用该帐户?此问题是由使用Azure AD进行身份验证引起的。 文档“Authenticationing Azure资源管理请求”(Authenticationing Azure Resource Management request)中说“您使用Azure资源管理器对资源执行的所有任务都必须通过Azure Active Directory的身份验证。”。因此,使用类
ComputeHelper
的Azure资源管理API必须通过AAD验证
您需要首先使用管理门户在Azure AD上设置身份验证。有关详细步骤,请参阅和
这里有一个用Java调用Azure AD的示例项目(),它可以帮助您。谢谢您的回复,Jason。现在我得到java.io.EOFException:如下所示。线程“main”java.util.concurrent.ExecutionException中的异常:java.io.EOFEException:由于在com.microsoft.azure.management.storage.StorageAccountOperationsImpl.create中java.util.concurrent.FutureTask.report(FutureTask.java:122)处的java.util.concurrent.FutureTask.get(FutureTask.java:188)处的输入结束,因此没有要映射到对象的内容(StorageAccountOperationsImpl.java:737)你知道该怎么做吗?你试过Peter Pan提到的步骤吗?它们有用吗?