Azure部署名称''不存在 Java创建虚拟机

3
我正在尝试使用Azure Java SDK部署虚拟机。我可以通过Java从我的Azure门户检索清单。
在尝试部署虚拟机时,它会要求在函数中提供部署名称:
computeManagementClient.getVirtualMachinesOperations().create(String, String, VirtualMachineCreateParameters);
第二个字符串应该是“部署名称”,我在Azure门户中找不到应该是什么,或者如何创建部署名称容器?
我已经尝试了几个我认为可能正确的名称,但是收到了异常。
    Exception in thread "main" java.util.concurrent.ExecutionException: com.microsoft.windowsazure.exception.ServiceException: ResourceNotFound: The deployment name 'thundertest' does not exist.
    at java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.util.concurrent.FutureTask.get(FutureTask.java:188)
    at com.microsoft.windowsazure.management.compute.VirtualMachineOperationsImpl.create(VirtualMachineOperationsImpl.java:5359)
    at com.thunderhead.cloudlib.azure.RequestBuilder.createVirtualMachines(RequestBuilder.java:344)
    at com.thunderhead.cloudlib.azure.RequestBuilder.main(RequestBuilder.java:365)
Caused by: com.microsoft.windowsazure.exception.ServiceException: ResourceNotFound: The deployment name '<deploymentName?>' does not exist.
    at com.microsoft.windowsazure.exception.ServiceException.createFromXml(ServiceException.java:216)
    at com.microsoft.windowsazure.management.compute.VirtualMachineOperationsImpl.beginCreating(VirtualMachineOperationsImpl.java:1884)
    at com.microsoft.windowsazure.management.compute.VirtualMachineOperationsImpl$3.call(VirtualMachineOperationsImpl.java:1038)
    at com.microsoft.windowsazure.management.compute.VirtualMachineOperationsImpl$3.call(VirtualMachineOperationsImpl.java:1035)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)

你尝试过先调用 computeManagementClient.getVirtualMachinesOperations().createDeployment() 吗? - BenV
我还没有尝试,我会试一下然后回报结果。我发现很难找到关于Java SDK的全面文档。 - Whisk3y
我明白你的意思。他们的单元测试可能提供一些基本的使用示例。 - BenV
单元测试是让我走到这一步的关键,但它们有点晦涩难懂。感谢您指出了让我解决问题的方法,现在我要继续解决下一个问题了! - Whisk3y
啊,谢谢提醒,你能把它发表为答案吗?我会点赞的。我已经删除了我的回答。 - Whisk3y
1个回答

0

首先调用computeManagementClient.getVirtualMachinesOperations().createDeployment()应该会返回一个部署对象,你可以将其名称传递给computeManagementClient.getVirtualMachinesOperations().create


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接