1

我最近开始使用谷歌云平台,遇到了各种各样的包,比如

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

有人可以解释一下吗?

4

1 回答 1

0

多年来,Google 已经发布了许多 Java API 客户端库。

当前最好的 Java API 客户端是google-cloud library。它使用 Java 包com.google.cloud。对于 Cloud Storage,如果类位于com.google.cloud.storage.

在这个库之前,还有一组称为Google APIs Client Libraries的库。这些库将它们的类放在com.google.api包中。对于 Cloud Storage,您可以在com.google.api.services.storage. 使用此库的代码还将使用独特的存储资源动词函数模式,如storage.buckets().objects().get()模式。

Google APIs 客户端库仍然受支持,但我建议首选 google-cloud 库来获取新代码。不幸的是,由于这种库切换,您在网上找到的一些代码示例将使用前者或后者,或者更糟糕的是,两者都使用。

于 2017-04-13T18:44:36.967 回答