2018/01/21

[Java] Google Cloud ライブラリで例外 NoSuchMethodError が発生する問題

Google Cloud StorageのJavaライブラリを使用した時に、以下の例外が発生した際の対処法メモ

発生した例外
Caused by: java.lang.NoSuchMethodError: com.google.api.gax.core.GaxProperties.getLibraryVersion(Ljava/lang/Class;)Ljava/lang/String

MavenでCloud StorageとCloud Loggingを入れていると実行時に例外が発生する

入れていたライブラリとバージョン
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-storage</artifactId>
<version>1.15.0</version>
<groupId>com.google.cloud</groupId>
<artifactId>google-cloud-logging</artifactId>
<version>1.15.0</version>

調べてみるとStorageとLoggingで使用しているgaxというライブラリのバージョンが異なっており、それが原因でエラーが発生したようだ。

仮対処として使用していないLoggingのライブラリを削除した所、例外は発生しなくなった。


参考
java.lang.ClassNotFoundException: com.google.api.gax.rpc.ClientSettings when using Firestore
https://github.com/GoogleCloudPlatform/google-cloud-java/issues/2496

0 件のコメント:

コメントを投稿