【小功能3】android引用jar時會報錯找不到第3方的類java.lang.NoClassDefFoundError

 

     今天在弄一個程序的時候,須要引入第三方的一個jar包,可是在運行的時候找不到第3方的類java.lang.NoClassDefFoundError。可是編譯徹底沒有任何問題,APK文件能夠生產,可是運行時報錯。java

   解決方法把須要的jar包放入src目錄中,而後再Library中右鍵Build Path->Config Build Paht->add external jars ,這裏選擇的jar爲我們剛剛放入的src中的jar包,而後OK再運行就沒有問題。android

主要分析了一下緣由(不是很對),咱們在生成apk程序的時候,通常會把資源文件res及類文件classes.dex(類文件打包了),還有主配置文件等包含進入,可是並不包含包含android.jar之類的系統jar包,咱們在eclispe中創建android工程須要這個android.jar是由於咱們的程序須要android中提供的相關類,可是在apk運行在手機裏時已經有這個環境了,同時源碼中已經包含了全部的類,源碼編譯時都會提供的。因此咱們在引用外部jar的時候在eclipse中編譯他經過路徑能夠找到裏面相關的類,可是一運行在手機上他就會找不到,不知道分析的對不對。語言表達能力不行。eclipse

 

    我在網上找了一下相關資料,貌似有用的不是狠多,可是有一位說他也解決了,可是我沒試他的方法,我按照我本身的方式解決了就行了。ide

下面是他的方法。ui

     有些android項目要引入第三方jar包,當你配置好後,項目沒有報什麼錯誤,可是當運行了以後,老是會報找不到類即java.lang.noclassdeffounderror的錯誤,今天在寫一個項目的時候再次遇到了,盤弄了好久以後終於解決了,給你們參考一下,按照下面四個步驟引入jar包便可:spa

       一、在Android項目根目錄下新建一個lib文件夾,右鍵;blog

       二、在libs目錄上點右鍵,選Bulid path  –> Use as source folder;     ip

       三、把你須要的導入的第三方Jar包複製進這個目錄;資源

       四、選中這個Jar包,右鍵->Build Path->Add to Build Path。get

       按照這四個步驟引入第三方jar包,以上說明的錯誤便可解決。

相關文章
相關標籤/搜索