【问题标题】:AggregateException when calling GetApplicationDefaultAsync()调用 GetApplicationDefaultAsync() 时出现 AggregateException
【发布时间】:2016-08-03 04:03:32
【问题描述】:

我正在尝试运行sample Vision API 项目。我基本上将代码Program.cs 复制并粘贴到我的应用程序中并执行它。

这一行(即 #36-#37 in Program.cs 行)

GoogleCredential credential = GoogleCredential.GetApplicationDefaultAsync().Result;

mscorlib.dllAdditional information: One or more errors occurred. 中抛出一个System.AggregateException

通过检查InnerException,我发现实际抛出的异常是InvalidOperationExceptionError deserializing JSON credential data.

不过,我的云项目是一个基本项目,有一个服务帐户,并且启用了 Cloud Vision API,仅此而已。我通过以下方式检查了我的环境变量是否设置为 JSON 文件:

Console.WriteLine(Environment.GetEnvironmentVariable("GOOGLE_APPLICATION_CREDENTIALS"));

在上一行之前。 (就在崩溃之前)的输出是(类似于):

C:\Users\me\Documents\Projects\MyProject\MyProject-ba31aae6efa1.json

我检查了文件,这是我启用服务帐户时得到的文件。其中的每个属性看起来都很好(即项目名称正确,路径正确,...)。

我安装了 Google Cloud SDK 并执行了gcloud beta auth application-default login 并授权访问我的云帐户。

关于可能导致此问题的任何想法?

【问题讨论】:

    标签: c# google-cloud-platform google-cloud-vision


    【解决方案1】:

    通过检查详细的构建日志,我发现 Google API 的包依赖于 Newtonsoft.Json 版本 9.0.1(撰写本文时的最新版本)。

    无论出于何种原因,Google API Newtonsoft.Json 版本7.0.0 具有依赖关系(与它们一起安装)。

    软件包版本错误!

    安装最新版本(在这种情况下为9.0.1)可以解决此问题。

    【讨论】:

      猜你喜欢
      • 2016-08-01
      • 2013-05-27
      • 1970-01-01
      • 2023-03-19
      • 2012-01-06
      • 2015-03-24
      • 2023-04-09
      • 2013-12-29
      • 2020-01-05
      相关资源
      最近更新 更多