Adding as a dependency [com.android.support/support-v4 "21.0.0" :extension "aar"] and importing a corresponding library (e.g. (:import (android.support.v4.view ViewPager)) causes the program to compile correctly, but crash at startup (deployed with lein droid doall to a Genymotion emulator). Lein tree also shows the lib is loaded. I referenced this in issue #145
Here is a minimal repo for reproduction: https://github.com/rabipelais/supportv4-test
It seems to happen with all versions of the v4 library.
If I however misspell the import, for example (:import (android.support.v4.view ViewPagerfoooooo)), the error is correctly caught at compile time.
Logcat of the crash:
java.lang.ExceptionInInitializerError
at java.lang.Class.classForName(Native Method)
at java.lang.Class.forName(Class.java:308)
at clojure.lang.RT.classForName(RT.java:2174)
at clojure.lang.RT.classForName(RT.java:2183)
at clojure.lang.RT.loadClassForName(RT.java:2202)
at clojure.lang.RT.load(RT.java:443)
at clojure.lang.RT.load(RT.java:419)
at clojure.core$load$fn__5458.invoke(core.clj:5862)
at clojure.core$load.doInvoke(core.clj:5861)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.lang.Var.invoke(Var.java:379)
at my.stuff.fitlogger.MainActivity.<clinit>(Unknown Source)
at java.lang.Class.classForName(Native Method)
at java.lang.Class.forName(Class.java:308)
at java.lang.Class.forName(Class.java:272)
at neko.App$1.run(App.java:55)
at java.lang.Thread.run(Thread.java:818)
Caused by: java.lang.ClassNotFoundException: android.support.v4.view.ViewPager
at java.lang.Class.classForName(Native Method)
at java.lang.Class.forName(Class.java:308)
at clojure.lang.RT.classForName(RT.java:2174)
at clojure.lang.RT.classForNameNonLoading(RT.java:2187)
at my.stuff.fitlogger.main$loading__5350__auto____21.invoke(main.clj:1)
at my.stuff.fitlogger.main__init.load(Unknown Source)
at my.stuff.fitlogger.main__init.<clinit>(Unknown Source)
... 17 more
Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.v4.view.ViewPager" on path: DexPathList[[zip file "/data/app/my.stuff.fitlogger.debug-2/base.apk"],nativeLibraryDirectories=[/vendor/lib, /system/lib]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
at java.lang.ClassLoader.loadClass(ClassLoader.java:469)
... 24 more
Suppressed: java.lang.ClassNotFoundException: android.support.v4.view.ViewPager
at java.lang.Class.classForName(Native Method)
at java.lang.BootClassLoader.findClass(ClassLoader.java:781)
at java.lang.BootClassLoader.loadClass(ClassLoader.java:841)
at java.lang.ClassLoader.loadClass(ClassLoader.java:504)
... 25 more
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
Adding as a dependency
[com.android.support/support-v4 "21.0.0" :extension "aar"]
and importing a corresponding library (e.g.(:import (android.support.v4.view ViewPager))
causes the program to compile correctly, but crash at startup (deployed withlein droid doall
to a Genymotion emulator). Lein tree also shows the lib is loaded. I referenced this in issue #145 Here is a minimal repo for reproduction: https://github.com/rabipelais/supportv4-testIt seems to happen with all versions of the v4 library. If I however misspell the import, for example
(:import (android.support.v4.view ViewPagerfoooooo))
, the error is correctly caught at compile time.Logcat of the crash: