2016-08-03 16 views
8

sample Vision APIプロジェクトを実行しようとしています。私は基本的にコードProgram.csをコピーしてアプリケーションに貼り付けて実行しました。GetApplicationDefaultAsync()を呼び出すときのAggregateException

このライン

GoogleCredential credential = GoogleCredential.GetApplicationDefaultAsync().Result; 

Additional information: One or more errors occurred.mscorlib.dllSystem.AggregateExceptionスロー(回線#36-#37 in Program.csです)。

InnerExceptionを調べると、実際にスローされた例外はInvalidOperationExceptionであり、Error deserializing JSON credential data.であることがわかりました。

しかし、私のクラウドプロジェクトは基本的なプロジェクトで、サービスアカウントとクラウドビジョン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を実行し、クラウドアカウントへのアクセスを許可しました。

何が原因で起こっている可能性がありますか?

+0

さらに詳しい情報が必要な場合は、コメントしてください。 – Rakete1111

+0

推測の代わりに、 'AggregateException'を展開し、[InnerExceptions](https://msdn.microsoft.com/en-us/library/system.aggregateexception.innerexceptions(v = vs.110).aspx)を見てください。プロパティ。 –

+0

@IvanStoevありがとう、私はそれを知らなかった。 – Rakete1111

答えて

5

詳細なビルドログを調べると、Google APIのパッケージにNewtonsoft.Jsonバージョン9.0.1(この記事の執筆時点では最新版)の依存関係があることがわかりました。

どんな理由であれ、Google APIのパッケージNewtonsoft.Jsonバージョン7.0.0に(彼らと一緒にインストールされている)依存性を持っています。

パッケージに間違ったバージョンが付属しています。

最新バージョン(この場合は9.0.1)をインストールすると問題が解決されます。

+0

うん、それだった..ありがとうたくさん – curiousBoy

+0

ありがとう!これは私の問題を解決しました。 –

関連する問題