gcloud-java-storage Storage.BlobListOption.recursive(false) 不工作

gcloud-java-storage Storage.BlobListOption.recursive(false) not working

我正在尝试使用 gcloud-java storage on GCS bucket outside appengine based on

做一个非递归列表

但是它似乎没有按预期工作,即它仍然列出所有文件,尽管我已经设置了 Storage.BlobListOption.recursive(false)

我的代码结构基本上是这样的: Storage client = StorageOptions.defaultInstance().service(); Page<Blob> blobPage = client.list(my_bucket, Storage.BlobListOption.recursive(false)); for (Blob blob : blobPage.values()) { // it is still iterating all the leaf files in my_bucket }

实际上后来我发现 BlobListOption 的 none 似乎正在生效(maxResultsprefix)并且列表只会 return 所有叶子文件,无论如何...

我是不是使用了 API 错误或者可能是什么问题?

非递归 blob 和前缀(文件夹)列表存在错误。 自 v 0.1.15 以来已修复此问题(请参阅 this)。递归选项 已替换为 currentDirectory,现在您可以获得 prefixes/child 文件夹。如果这对您不起作用,或者您认为任何其他选项都无法按预期工作,请提交 issue,它将 很快就处理好了。