Azure Java SDK - VHD上载

时间:2016-06-14 13:14:53

标签: java azure vhd azure-blob-storage azure-java-sdk

尝试通过java sdk将VHD文件上传到azure存储时出现以下错误

错误:

  

收到回复。状态代码=' 400',请求ID =   ' 33ed86f1-0001-0085-383d-c67f28000000',Content-MD5 =' null',ETag =   ' null',Date ='周二,2016年6月14日13:09:43 GMT'。错误响应   接收。 HttpStatusCode = 400,HttpStatusMessage =指定的blob   或阻止内容无效。,ErrorCode = InvalidBlobOrBlock,   ExtendedErrorInformation = {ErrorMessage =指定的blob或块   内容无效。检查是否应重试该操作。   重试次数=' 0',HTTP状态代码=' 400',错误消息='   指定的blob或块内容无效。'

2 个答案:

答案 0 :(得分:1)

这是因为不同的原因可能会发生的问题 - 我遇到的大多数问题都是在一段时间内修复的。 Gaurav Mantri有一篇非常好的文章描述了如何解决这个问题 - 请检查that。 简而言之 - 可能是因为您尝试在短时间内上传相同的blob几次。尝试等待并再次上传。

我的第二个想法是你可以尝试使用不同的方法将VHD上传为固定blob吗?例如,PowerShellazcopy。但我不知道这个场景,所以这只是一个想法。

答案 1 :(得分:0)

除了PowerShell / azcopy(那些目标Windows用户)之外,还有用于跨平台的Go lang编写的vhd上传工具。如果您在Linux中并想尝试vhd上传,此工具应该可以帮助您https://github.com/Microsoft/azure-vhd-utils