2016-06-19 54 views
0

我已经开始使用Java开发新项目,并希望将其部署到Google Cloud Platform(而不是App Engine!)。我也想用一些由GCP提供的服务/产品:数据存储,PubSub的等Google云端平台 - 统一库

我开始与数据存储,并找到了很好的图书馆: https://github.com/GoogleCloudPlatform/gcloud-java

然后,我决定开始使用的PubSub和发现gcloud-java没有与PubSub相关的任何东西。 一些针对Java PubSub的支持库都在这里: https://cloud.google.com/pubsub/libraries

所以,我只是想确认(因为它似乎太奇怪了我),那谷歌没有对他们的服务有任何统一的Java库?除了使用两个库(使用不同的策略来管理凭证等),我没有别的办法了吗?

任何帮助/建议将不胜感激! 预先感谢您。

回答

0

我不认为你需要第一个lib。你只需要如下:

compile "com.google.api-client:google-api-client:1.21.0" 
compile "com.google.apis:google-api-services-pubsub:v1-rev8-1.21.0" 

而且你的代码会像:

HttpTransport httpTransport = new ApacheHttpTransport(); 
JsonFactory jsonFactory = JacksonFactory.getDefaultInstance() 
GoogleCredential credentials = GoogleCredential 
     .fromStream(json) 
     .createScoped(PubsubScopes.all()); 

// or on Google Cloud Platform 
GoogleCredential credentials = GoogleCredential 
     .getApplicationDefault(httpTransport, jsonFactory); 

Pubsub pubsub = new Pubsub.Builder(httpTransport, jsonFactory, credentials) 
     .build();