【发布时间】:2015-07-24 09:15:59
【问题描述】:
我在使用 Java 关注 tutorial 时无法连接到 Google 的 BigQuery。
我的问题是我无法解决方法:
GoogleCredentials.getApplicationDefault(HttpTransport t, JsonFactory f);
即使我正在导入正确的包:
import com.google.api.client.googleapis.auth.oauth2.GoogleCredential;
我添加了我认为正确的库:
com.google.oauth-client:google-oauth-client:1.19.0
这是我的完整代码:
package com.test.tester;
import com.google.api.client.googleapis.auth.oauth2.GoogleCredential;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.http.javanet.NetHttpTransport;
import com.google.api.client.json.JsonFactory;
import com.google.api.client.json.jackson2.JacksonFactory;
import com.google.api.services.bigquery.Bigquery;
import com.google.api.services.bigquery.BigqueryScopes;
import java.io.IOException;
import java.util.Collection;
public class BigQuerytest {
private static Bigquery createAuthorizedClient() throws IOException {
Collection<String> bigqueryScopes = BigqueryScopes.all();
HttpTransport transport = new NetHttpTransport();
JsonFactory jsonFactory = new JacksonFactory();
GoogleCredential credential = GoogleCredential.getApplicationDefault(
transport, jsonFactory);
if (credential.createScopedRequired()) {
credential = credential.createScoped(bigqueryScopes);
}
return new Bigquery.Builder(transport, jsonFactory, credential)
.setApplicationName("BigQuery Samples").build();
}
}
我相信我的问题来自 Google Credentials 库,它不是正确的,但我尝试了许多其他方法,但都没有成功...
感谢您的帮助。
【问题讨论】:
标签: java oauth-2.0 google-bigquery google-oauth