ぱんぶろ

パンジーの「いいね!」ブログ

noclassdeffounderrorの解決方法。ライブラリが怪しい・・・。

      2016/03/30  

medium_9849183645
photo credit: Skley via photopin cc

外部のファイルを読み込むというのは、なかなか面倒なものですね・・・。

Androidで参考書方手に、サンプルソースを読み込んで勉強させてもらってるんですけど、
定期的にエラーがでます。

今回は、noclassdeffounderrorというエラー。

調べてると、色々原因があるみたいですけど、
私の場合は、外部ライブラリのパスが合っていないために起こったものだと分かりました。

本解消法は、以下の人に有効です。

  1. eclipseでAndroidアプリ開発をしている。
  2. ライブラリを使ったプロジェクトでnoclassdeffounderrorが起きる。
  3. エラーが起きるのは、ライブラリのクラスを使っている所である。

では、解消方法を紹介していきます。

スポンサード リンク

noclassdeffounderrorの解決方法

これは原因さえ分かってしまえばめちゃくちゃ簡単です。
eclipseでAndroidアプリ開発を行うためには、ADTと呼ばれるプラグインをインストールする必要があります。

何故だかは分かりませんが、このADTのバージョンアップに伴って、ライブラリの参照フォルダパスが変わっていたというのが原因みたいです・・・。

そのパスが、lib⇒libs

なんて余計なことを・・・。

ようするに、
参考書のサンプルソースは、古いADTで作っていたため、ライブラリファイルをlibに格納していたけど、
私のeclipseの環境だと、新しいADTになっているため、libsに格納しないと、ライブラリが認識されなくなってしまったということです。

手順を整理すると、
1.インポート時libで作成されているフォルダを、
libs

2.libsにリファクタリングします。
libs2

3.lib⇒libsに変わったので、ライブラリパスも変更してあげます。
libs3

以上です。
分かってみれば簡単でしょ。

アプリ開発していると、当たり前のようにエラーにぶち当たるけど、
どうにかならんもんかな・・・。

とりあえず一個一個解決していくしかないか。

[参考サイト]
外部jarを使ったandroidプロジェクトが起動しなくなった解決法