日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java.lang.NoClassDefFoundError: * : Landroid/support/v7/gridlayout/R$styleable 异常终极解决办法

發布時間:2024/7/5 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java.lang.NoClassDefFoundError: * : Landroid/support/v7/gridlayout/R$styleable 异常终极解决办法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

該問題解決辦法適用于任何類似問題。

問題的標準異常描述為:java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v7/gridlayout/R$styleable

今天由于項目需要,想在項目中使用GridLayout,無奈,標準庫中的GridLayout從API 21起才開始提供權重功能,于是使用了支持庫中的GridLayout,但是加入到項目中之后報出如下異常:

java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v7/gridlayout/R$styleable

自己檢查了項目無數遍沒有解決,于是嘗試Google,無奈,翻遍了前兩頁的所有結果,都沒能解決,最后還是由百度搜索提供的國內結果將問題解決。

參考地址:http://blog.csdn.net/zhengdan66/article/details/9119653

上面的博客可以針對Eclipse的工程解決,但是在AS中有一些小的細節需要處理到,下面對這些細節做一些補充:

  • 1 . 首先需要將包android-support-v7-gridlayout.jar拷入到AS的libs目錄中,然后右擊菜單選擇”as Library”。
  • 2 . 由于需要將GridLayout的工程目錄作為AS的依賴目錄,所以需要使用Eclipse將GridLayout的工程導入,然后導出其build.gradle文件,如下圖所示:

  • 然后工程中會出現一個build.gradle文件,如下圖所示:

  • 3 .將以上步驟做好之后,需要在AS中將工程作為依賴工程導入到AS中:

  • 4 .上圖所示的步驟完成之后,工程就會將GridLayout的工程導入到項目中了:

  • 5 .最后打開app的Module配置,將GridLayout庫作為app Module的依賴庫就可以了:

做完以上這些基本上沒有問題的,但是由于個別的情況不同,需要將一些細節進行說明:

注意: appcompat-v7包的gradle依賴首選要選擇中央庫,盡量不要使用appcompat-v7文件依賴包,注意,不能同時存在兩種的appcompat-v7依賴關系,這也是不能正常運行的原因之一,gradle的依賴如下所示:

dependencies {compile fileTree(include: ['*.jar'], dir: 'libs')testCompile 'junit:junit:4.12'compile 'com.android.support:appcompat-v7:23.3.0'compile files('libs/android-support-v4.jar')compile files('libs/android-support-v7-gridlayout.jar') }

希望可以幫到大家,有問題請留言。

總結

以上是生活随笔為你收集整理的java.lang.NoClassDefFoundError: * : Landroid/support/v7/gridlayout/R$styleable 异常终极解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。