لقد اكتشفت مشكلة مؤخرًا. أحيانًا أقوم بإضافة jar وإزالة الجرة إلى مشروع Android بشكل متكرر، وأجد أن التجميع يمكن أن ينجح، ولكن عند تطبيقه على كائن جرة خارجية، سيتم طرح استثناء java.lang.NoClassDefFoundError. أثناء العملية. يتسبب في تعطل البرنامج.
تحقق من خصائص المشروع واكتشف أن عنصر تبعيات Android في مسار إنشاء Java أقل من المشروع العادي:
بالمقارنة مع المشروع قبل الخسارة، وجدنا أن الاختلاف يكمن في ملف .classpath في الدليل الجذر للمشروع، <classpathentry Exported="true" kind="con" path="com.android.ide.Eclipse.adt .LIBRARIES"/ > أصبح المصدر هنا خطأ، لذلك قمت بتغييره مرة أخرى إلى صحيح، ثم أغلقت المشروع وفتحته مرة أخرى، ووجدت أنه على ما يرام.
بالإضافة إلى ذلك، إذا لم يتم وضع حزمة الجرة التي قمت باستيرادها في الدليل /libs الخاص بدليل المشروع، فستحدث هذه المشكلة أيضًا. يرجى وضع حزمة الجرة في الدليل /libs، وإلا، على الرغم من إمكانية نجاح التجميع لا يتم تعبئتها عند الدخول، لذلك يسبب الاستثناء أعلاه. سيقوم Eclipse تلقائيًا بحزم الملفات في الدليل /libs عند التحويل البرمجي.
لم تظهر هذه المشكلة من قبل ولا أعرف ما إذا كانت مرتبطة بإصدار Eclipse وإصدار ADT.