I followed the official instructions to Add an AAR as a dependency. The build.gradle of the app has:
implementation files('libs/androidLibrary-release.aar')
The app builds and starts fine. However, it crashes when it uses a method of the library with the following in the logcat:
java.lang.NoClassDefFoundError: Failed resolution of: Lorg/joda/time/DateTime;
at net.mydomain.android.utility.getCurrentTime(SourceFile:1)
...
Caused by: java.lang.ClassNotFoundException: Didn't find class "org.joda.time.DateTime" on path: DexPathList[[zip file "/data/app/com.mydomain.foo-1/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)
...
Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
Method getCurrentTime() uses joda-time. The library has the following in its build.gradle:
implementation 'joda-time:joda-time:2.10.5'
I also tried api as follows to no avail:
api 'joda-time:joda-time:2.10.5'
Could anyone offer a tip to help find the culprit?
I used to import aar libraries as modules and they worked flawlessly. I have just updated Android Studio to Arctic Fox and the option to import an aar library is no longer available.