【问题标题】:Updated SDK version, getting ClassNotFoundException: android.support.v4.view.ViewPager更新 SDK 版本,出现 ClassNotFoundException: android.support.v4.view.ViewPager
【发布时间】:2012-03-22 21:43:49
【问题描述】:

当我在我的 Android 项目上工作时,我发现 Logcat 很烦人(不会将滚动条保持在给定点),并且读到更新 SDK 版本会添加一个暂停按钮来解决这个问题。我更新到 SDK 版本 17,现在我遇到了一些以前没有的奇怪问题。我删除并添加了 android 支持库,但没有运气。我一直在阅读互联网,但我仍然无法弄清楚。日志如下。

03-22 15:54:18.558: E/AndroidRuntime(11597): FATAL EXCEPTION: main
03-22 15:54:18.558: E/AndroidRuntime(11597): java.lang.RuntimeException: Unable to start   activity ComponentInfo{kris.android/kris.android.ActivityPortfolio}:  android.view.InflateException: Binary XML file line #184: Error inflating class android.support.v4.view.ViewPager
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1821)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1842)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.app.ActivityThread.access$1500(ActivityThread.java:132)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1038)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.os.Handler.dispatchMessage(Handler.java:99)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.os.Looper.loop(Looper.java:150)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.app.ActivityThread.main(ActivityThread.java:4263)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at java.lang.reflect.Method.invokeNative(Native Method)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at java.lang.reflect.Method.invoke(Method.java:507)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at dalvik.system.NativeStart.main(Native Method)
03-22 15:54:18.558: E/AndroidRuntime(11597): Caused by: android.view.InflateException: Binary XML file line #184: Error inflating class android.support.v4.view.ViewPager
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:581)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.view.LayoutInflater.rInflate(LayoutInflater.java:623)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.view.LayoutInflater.rInflate(LayoutInflater.java:626)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.view.LayoutInflater.inflate(LayoutInflater.java:408)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:231)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.app.Activity.setContentView(Activity.java:1742)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at kris.android.ActivityPortfolio.onCreate(ActivityPortfolio.java:44)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1785)
03-22 15:54:18.558: E/AndroidRuntime(11597):    ... 11 more
03-22 15:54:18.558: E/AndroidRuntime(11597): Caused by: java.lang.ClassNotFoundException: android.support.v4.view.ViewPager in loader dalvik.system.PathClassLoader[/data/app/kris.android-2.apk]
03-22 15:54:18.558: E/AndroidRuntime(11597):    at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.view.LayoutInflater.createView(LayoutInflater.java:471)
03-22 15:54:18.558: E/AndroidRuntime(11597):    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:570)
03-22 15:54:18.558: E/AndroidRuntime(11597):    ... 21 more

【问题讨论】:

标签: android


【解决方案1】:

转到Project->Properties->Java Build Path 而不是选择Order and export 选项卡。 选中 android-support-v4.jar 库并将其置于列表顶部。 然后清理并重建项目。

【讨论】:

  • 我遇到了同样的问题......但在任何地方都没有看到任何“android-support-v4.jar”库。只有 Android 4.0.3、Android Dependencies、GoogleAdMobAdsSdk 以及我的应用的 src 和 gen。
  • @Carol,尝试右键单击您的项目 -> 构建路径 -> 添加外部档案。然后通过打开的文件浏览器添加您的目标存档。最后你的 jar 应该列在那里。
  • @Vladimir,我不确定 jar 必须在列表的顶部。还是很好的答案,谢谢。
  • +1 .. thx .. 在您回答一年多之后.. 它对我有帮助:)
  • 我遇到了这个问题,但它是因为找不到 com.google.ads.AdRequest 的类定义。使用 Api 16。Vla​​dimir 提到的内容在彻底清理项目后起作用。
【解决方案2】:
03-22 15:54:18.558: E/AndroidRuntime(11597): Caused by: java.lang.ClassNotFoundException: android.support.v4.view.ViewPager in loader dalvik.system.PathClassLoader[/data/app/kris.android-2.apk]

我尝试按照上面的链接移动 JAR,但它对我不起作用。起作用的是@Vladimir 的回答。
如果您检查项目的 .classpath(在 SDK.r17 之前生成),您会发现它不包含 android-support-v4.jar 的类路径条目。从 SDK.r17 开始,这似乎是一个强制性条目,因此 @Vladimir 的回答是正确的。

谷歌试图(不充分地)解释this

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-07-04
    • 2012-06-02
    • 1970-01-01
    • 2018-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多