Vì tôi đã cập nhật ADT thành 19, tôi bắt đầu nhận được lỗi sau. Sự cố xảy ra bất cứ khi nào tôi khởi động ứng dụng của mình. Tôi đã kiểm tra tất cả các bài viết trước liên quan đến điều này, nhưng có vẻ như không ai trong số họ giúp. bất kỳ ý tưởng sẽ được đánh giá rất nhiều ...ClassNotFoundException sau khi nâng cấp lên ADT 18
Thiết lập của tôi
- Tôi hiện đang có ADT 18, SDK 19, elcipse trong Windows 7 64bit.
- Tôi sử dụng dự án thư viện làm cho ashare.jar và tất cả các jars bên ngoài của tôi (ví dụ: dropbox, commons codec) nằm trong thư mục "libs" trong dự án Thư viện (Ashare).
- Tôi không sử dụng proguard.
Cách chúng tôi thấy sự cố này.
- Tạo apk trong eclipse> {MyProject}> Nhấp chuột phải> Android Tools> Export ký ứng dụng gói
- cài đặt các gói ứng dụng trong giả lập hoặc dev.phone sử dụng "adb cài đặt XXX.apk"
- Bắt đầu ứng dụng. Sau đó, BOOM. nó ném lỗi.
Một số điều đáng chú ý là
- Nó bắt đầu xảy ra sau khi tôi cập nhật để ADT trong nhật thực của tôi lên phiên bản 18
- Nó chỉ xảy ra khi tôi làm apk ký và chạy nó trong giả lập hoặc dev. điện thoại.
- Tôi không thấy vấn đề gì nếu tôi chạy ứng dụng của mình bằng cách sử dụng {MyProject}> Nhấp chuột phải> Chạy dưới dạng> Ứng dụng Android
- Khi tôi kiểm tra bên trong classes.dex, tôi thấy một số lớp bị thiếu ở đó. Tôi không chắc chắn, nhưng tôi cảm thấy quá trình xây dựng không bao gồm tất cả các lớp học trong classes.dex
- Trong xuất khẩu, không có lỗi trong nhật thực console (Tôi sử dụng tùy chọn tiết trong Android> Xây dựng> Xây dựng thiết lập đầu ra)
Java Exception
05-07 08:52:48.336: D/AndroidRuntime(3055): Shutting down VM
05-07 08:52:48.336: W/dalvikvm(3055): threadid=1: thread exiting with uncaught exception (group=0x40a3e1f8)
05-07 08:52:48.340: E/AndroidRuntime(3055): FATAL EXCEPTION: main
05-07 08:52:48.340: E/AndroidRuntime(3055): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.acj0.barcodeexpdemo/com.acj0.barcodeexpdemo.Launcher}: java.lang.ClassNotFoundException: com.acj0.barcodeexpdemo.Launcher
05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1880)
05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread.access$600(ActivityThread.java:123)
05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
05-07 08:52:48.340: E/AndroidRuntime(3055): at android.os.Handler.dispatchMessage(Handler.java:99)
05-07 08:52:48.340: E/AndroidRuntime(3055): at android.os.Looper.loop(Looper.java:137)
05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread.main(ActivityThread.java:4424)
05-07 08:52:48.340: E/AndroidRuntime(3055): at java.lang.reflect.Method.invokeNative(Native Method)
05-07 08:52:48.340: E/AndroidRuntime(3055): at java.lang.reflect.Method.invoke(Method.java:511)
05-07 08:52:48.340: E/AndroidRuntime(3055): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
05-07 08:52:48.340: E/AndroidRuntime(3055): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
05-07 08:52:48.340: E/AndroidRuntime(3055): at dalvik.system.NativeStart.main(Native Method)
05-07 08:52:48.340: E/AndroidRuntime(3055): Caused by: java.lang.ClassNotFoundException: com.acj0.barcodeexpdemo.Launcher
05-07 08:52:48.340: E/AndroidRuntime(3055): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61)
05-07 08:52:48.340: E/AndroidRuntime(3055): at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
05-07 08:52:48.340: E/AndroidRuntime(3055): at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.Instrumentation.newActivity(Instrumentation.java:1023)
05-07 08:52:48.340: E/AndroidRuntime(3055): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1871)
05-07 08:52:48.340: E/AndroidRuntime(3055): ... 11 more
CẬP NHẬT 5/7/2012
- Tất cả lọ của tôi là trong "libs" thư mục của thư viện dự án và tôi thấy tất cả trong số họ bao gồm trong "Dependencies Android"
CẬP NHẬT 2012/05/18 - TẠM SOLVED
- tôi tìm thấy giải pháp tạm thời. Ngay trước khi chạy "Xuất gói ứng dụng đã ký", tôi đã chọn "Làm sạch" KHÔNG CÓ "xây dựng tự động" tùy chọn được chọn. Sau đó, tôi không thấy lỗi nữa. Tôi không biết tại sao nó hoạt động. Nếu bạn có bất kỳ ý tưởng, xin vui lòng cho tôi biết.
Đăng nguồn của các lớp bạn tìm thấy bị thiếu trong tệp dex của bạn. Cũng cố gắng nắm bắt logcat được tạo ra trong quá trình odex khi gói ứng dụng được cài đặt. –
Tôi gặp sự cố tương tự ... Các thư viện có được bao gồm trong thư mục có tên là lib không? Hoặc libs? Bạn nên đi với một thứ hai ... – Shine
Tôi đã có ngoại lệ tương tự ném khi tôi cập nhật phiên bản SDK. Câu hỏi và câu trả lời là ([ở đây] (http://stackoverflow.com/questions/9831019/updated-sdk-version-getting-classnotfoundexception-android-support-v4-view-vie)) – wdziemia