閉じる

java.lang.NoClassDefFoundError: Failed resolution of: Lcom/sun/net/httpserver/HttpServer

Androidで Google Driveを使うにあたり、OAuth認証を調べる。
以前にも使ったことがあるのだけど、移り変わりの早い業界なのでトレンドも変わっているかもと。
Googleが多方面に展開していることもあり、実装方法も多々あるけど、Androidなので Java(kotlin含む)実装を探すと必ずたどり着くのがこのページ、もしくはこのページを元にしたページ。

Java quickstart | Drive API | Google Developers

やってみると件のエラーになる。
内部的に httpサーバを立ち上げ、それを通じて認証を行う実装らしいのだけど、httpサーバの実装に使う sun.net.httpserver.HttpServerが見つからないようで。
最初は Google APIsなシステムイメージを積んだエミュレータでエラーになって、Google APIsじゃないのを試して、実機でも試して、散々悩んだあげく、Androidアプリでは AuthorizationCodeInstalledAppを使う実装は違うんだなという結論に。
結局のところ、GoogleAccountCredentialを使う方法から変わっていない模様。今のところは。

コメントを残す

メールアドレスが公開されることはありません。必須項目には印がついています *

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)