【gradle】CardViewをgradleに定義していないとビルド直前でクラッシュする

Caused by: android.view.InflateException: Binary XML file line #10: Error inflating class android.support.v7.widget.CardView

というエラーに遭遇。以下logcatで出てきたエラーの内容

 

Caused by: java.lang.ClassNotFoundException: Didn’t find class “android.support.v7.widget.CardView” on path: DexPathList[[zip file “/system/framework/org.apache.http.legacy.boot.jar”, zip file “/data/app/your.applicationid.here.beta-s4nTgtJxcLhYh6AuEzrF6w==/base.apk”],nativeLibraryDirectories=[/data/app/your.applicationid.here.beta-s4nTgtJxcLhYh6AuEzrF6w==/lib/arm64, /system/lib64, /system/vendor/lib64]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at android.view.LayoutInflater.createView(LayoutInflater.java:606)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:790)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:730)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:863)
at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:824)
at android.view.LayoutInflater.inflate(LayoutInflater.java:515)
at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
at android.view.LayoutInflater.inflate(LayoutInflater.java:374)

 

cardViewなんて使ったことないぞと思ったら冒頭のページで記事のトップページを

切り分けて表示しているのを見てあぁこれか!と思い納得。

そういえばずっとloadingでぐるぐる回っていたけどこれだったのか・・・・。

なにかの拍子でcardviewを導入するためのプラグインが抜けていたのが原因でした。

解決方法は、buildgradle(module:app)の中にdependencies群があるので

その中に下記のように追加します。

<pre>implementation 'com.android.support:cardview-v7:28.0.0'</pre>

入れるときにバージョンが28でないと警告を受けるので必ず最新のものに変えてから

gradleに入れましょうと。

スタックオーバーフローさん、ありがとうございます。

http://Error inflating class android.support.v7.widget.CardView

 

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG