有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (2) 个答案

  1. # 1 楼答案

    请注意,根据Issue #3535,项目ID可能无法由setCredentials单独正确设置(“缺少项目ID”错误),因此应使用setProjectId显式设置

    例如

       ServiceAccountCredentials credentials;
       File credentialsPath = new File("/pathToJSONfile/SOME_NAME.json");
    
       try (FileInputStream serviceAccountStream = new FileInputStream(credentialsPath)) {
          credentials = ServiceAccountCredentials.fromStream(serviceAccountStream);
       }
    
       BigQuery bigquery = BigQueryOptions.newBuilder()
             .setCredentials(credentials)
             .setProjectId(credentials.getProjectId())
             .build().getService();
    
  2. # 2 楼答案

    尝试使用setCredentials和ServiceAccountCredentials。在构建服务时使用fromStream

    BigQuery bigquery = BigQueryOptions.newBuilder()
        .setCredentials(
           ServiceAccountCredentials.fromStream(
             new FileInputStream("your_json_service_keyfile.json"))
        )
        .build().getService()
    

    这应该更好地记录在谷歌的API文档中

    希望有帮助,这是我关于stackoverflow的第一个答案:-)