有一個工程,本來運行是正常的,我想把它移植到另一台PC上,結果報:
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.mobovip.bgr/com.mobovip.bgr.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.mobovip.bgr.MainActivity" on path: DexPathList[[zip file "/data/app/com.mobovip.bgr-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.mobovip.bgr-1, /vendor/lib, /system/lib]]
這個問題出現的情況基本有那么幾種:
1。Manifest文件中注冊的Activity的名稱,有沒有寫錯,包名有沒有搞錯,有些網友,可能只寫一個類名,前面用點號代替,但是這個類不在默認的包內,所以報這個錯,那么只要寫上類的全名,即可。(這個應該很容易檢查)
2。有些android,需要一些第三方的包,直接將其引入,在以前是可以的,但是在最新的adt中不行,必須在程序中新建一個libs文件夾,將第三方的jar文件copy到libs文件夾中,才行,很多人因為這樣才報錯,特別是以前的項目,默認並沒有這個libs文件夾,但是新版本的adt,默認就建了libs這個文件夾。(我的問題就出現在這點上,我安裝了最新的ADT,雖然在程序中新建了libs文件夾,但有些jar包並沒有放在libs中。但是我就奇怪,為什么引用其他文件夾中的jar包不可以?以前可以現在不可以,google瘋了?)
3。有一點也很重要,在Java Build Path面板下的Order and Export中,一定要把你引入的jar文件,勾上,否則,跟沒引用一樣,切記。(這個應該關系不大)
java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.mobovip.bgr/com.mobovip.bgr.MainActivity}: java.lang.ClassNotFoundException: Didn't find class "com.mobovip.bgr.MainActivity" on path: DexPathList[[zip file "/data/app/com.mobovip.bgr-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.mobovip.bgr-1, /vendor/lib, /system/lib]]
這個問題出現的情況基本有那么幾種:
1。Manifest文件中注冊的Activity的名稱,有沒有寫錯,包名有沒有搞錯,有些網友,可能只寫一個類名,前面用點號代替,但是這個類不在默認的包內,所以報這個錯,那么只要寫上類的全名,即可。(這個應該很容易檢查)
2。有些android,需要一些第三方的包,直接將其引入,在以前是可以的,但是在最新的adt中不行,必須在程序中新建一個libs文件夾,將第三方的jar文件copy到libs文件夾中,才行,很多人因為這樣才報錯,特別是以前的項目,默認並沒有這個libs文件夾,但是新版本的adt,默認就建了libs這個文件夾。(我的問題就出現在這點上,我安裝了最新的ADT,雖然在程序中新建了libs文件夾,但有些jar包並沒有放在libs中。但是我就奇怪,為什么引用其他文件夾中的jar包不可以?以前可以現在不可以,google瘋了?)
3。有一點也很重要,在Java Build Path面板下的Order and Export中,一定要把你引入的jar文件,勾上,否則,跟沒引用一樣,切記。(這個應該關系不大)
上面的是網上的一般的解決方法,但是樓主試了都沒空,樓主的解決方法是:fix project,就解決了
還有一種可能,就是依賴包沒有導入。
