java.lang.NoClassDefFoundError: android.support.v7.appcompat.R$styleable

南楼画角 提交于 2019-11-26 07:47:12

问题


i am using terminal [not eclipse]. i got following exception error, while i use emulator.debug successfully and installd successfully. But emulator show Unfortunatly app has stop. Then i run $ adb logcat it will display following.

java.lang.NoClassDefFoundError: android.support.v7.appcompat.R$styleable
at android.support.v7.app.ActionBarActivityDelegate.onCreate(ActionBarActivityDelegate.java:107)
at android.support.v7.app.ActionBarActivityDelegateICS.onCreate(ActionBarActivityDelegateICS.java:58)
at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:98)
at com.example.trintwo.MainActivity.onCreate(MainActivity.java:19)
at android.app.Activity.performCreate(Activity.java:5231)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
at android.app.ActivityThread.access$800(ActivityThread.java:135)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(Native Method)

I got this error, Even I installed android support library and i checked android-support-v7-appcompat.jar in android/support/v7/appcompat/lib path what will i do to clear this error.


回答1:


if you are using eclipse than just import the v7 compact library project into your work space and add it as a library to your project else if you are doing it from terminal than what you can do is put android-support-v7-appcompat library project (which you can find in sdk\extras\android\support\v7\appcompat)in the same directory where is your project and add this line to your project.properties file

android.library.reference.1=../android-support-v7-appcompat

do not forget to add both the jar files v4,v7 to your project as well.




回答2:


Make sure to do the following (from Support Library Setup):

  1. Right-click the library project folder and select Build Path > Configure Build Path.

  2. In the Order and Export tab, check the .jar files you just added to the build path, so they are available to projects that depend on this library project. For example, the appcompat project requires you to export both the android-support-v4.jar and android-support-v7-appcompat.jar files.

  3. Uncheck Android Dependencies.




回答3:


AppCompat is a lib with resource. You cannot add the jar, cause this library uses resources. So you need to add a library project.

Follow Adding Support Libraries steps.




回答4:


  1. Right-click the your project folder and select java Build Path >Libraries

  2. whether .jar file of your library project is present or not

  3. if not buld the correct path that contains .jar file




回答5:


If you are using Android Studio then its quick easier, Please add compile 'com.android.support:cardview-v7:21.+' in dependencies in build.gradle.

dependencies {
       compile 'com.android.support:cardview-v7:21.+'
}


来源:https://stackoverflow.com/questions/20900832/java-lang-noclassdeffounderror-android-support-v7-appcompat-rstyleable

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!