我最近开始使用谷歌云平台,并遇到了各种各样的软件包,如
Storage storage = storageBilder.build();
storage.get("bucketname", Storage.BucketGetOption.fields())
Storage.BucketGetOption.fields();
如果我使用上面的代码,我面临The method get(String, Storage.BucketGetOption) is undefined for the type Storage
。
它实际上使用了以下软件包中的存储
com.google.api.services.storage.Storage storage = storageBilder.build();
(i.still.do.not.know.this.)storage.get("bucketname", Storage.BucketGetOption.fields())
com.google.cloud.storage.Storage.BucketGetOption.fields();
为什么这种存储以各种方式实现? com.google.api
和com.google.cloud
的区别或用途是什么?
有人可以解释一下吗?
答案 0 :(得分:0)
Google多年来发布了许多Java API客户端库。
当前最好的Java API客户端是google-cloud library。它使用Java包com.google.cloud
。对于云存储,如果类位于com.google.cloud.storage
下,则您将使用此库。
在此库之前,还有另一组名为Google APIs Client Libraries的库。这些库将他们的类放在com.google.api
包中。对于云存储,您可以在com.google.api.services.storage
中找到课程。使用此库的代码也将使用独特的存储资源动词函数模式,如storage.buckets().objects().get()
模式。
仍然支持Google API客户端库,但我建议您更喜欢使用google-cloud库来获取新代码。不幸的是,由于这个库转换,你在网上找到的一些代码示例将使用前者或后者,或者更糟糕的是,两者都使用。