java.lang.NoClassDefFoundError: com.google.common.base.Suppliers$SupplierOfInstance on Android 6
- Dominant language
- Java
- Stars
- 12.7k
- Forks
- 1.7k
- Avg merge
- 11m
- Merged PRs (30d)
- 2
Description
Android app crashes on `Guice.createInjector(getModules());`:
Platform: Android API 23
`implementation 'com.google.inject:guice:4.2.3:no_aop'`
```
java.lang.NoClassDefFoundError: f.f.b.a.r$a
at f.f.b.a.r.a(Suppliers.java:268)
at f.f.b.b.i.(CacheBuilder.java:168)
at f.f.f.y.s2.(WeakKeySet.java:54)
at f.f.f.y.o0.(InheritingState.java:73)
at f.f.f.y.v0$b.d(InjectorShell.java:208)
at f.f.f.y.v0$b.e(InjectorShell.java:114)
at f.f.f.y.c1.b(InternalInjectorCreator.java:104)
at f.f.f.g.a(Guice.java:87)
at f.f.f.g.b(Guice.java:69)
```
Some mapping entries for clarity:
```
com.google.common.base.Suppliers -> f.f.b.a.r:
265:265:com.google.common.base.Supplier ofInstance(java.lang.Object) -> a
com.google.common.base.Suppliers$SupplierOfInstance -> f.f.b.a.r$a:
java.lang.Object instance -> P
271:273:void (java.lang.Object) ->
282:286:boolean equals(java.lang.Object) -> equals
277:277:java.lang.Object get() -> get
291:291:int hashCode() -> hashCode
296:296:java.lang.String toString() -> toString
com.google.common.cache.LongAddable -> f.f.b.b.i:
void increment() -> a
void add(long) -> b
com.google.inject.internal.WeakKeySet -> f.f.f.y.l2:
java.util.Map backingMap -> a
java.lang.Object lock -> b
com.google.common.cache.Cache evictionCache -> c
54:88:void (java.lang.Object) ->
40:40:void access$000(com.google.inject.internal.WeakKeySet,java.util.Set) -> a
91:115:void add(com.google.inject.Key,com.google.inject.internal.State,java.lang.Object) -> b
73:84:void cleanUpForCollectedState(java.util.Set) -> c
118:119:boolean contains(com.google.inject.Key) -> d
123:125:java.util.Set getSources(com.google.inject.Key) -> e
com.google.inject.internal.WeakKeySet$1 -> f.f.f.y.l2$a:
com.google.inject.internal.WeakKeySet this$0 -> P
58:58:void (com.google.inject.internal.WeakKeySet) ->
61:64:void onRemoval(com.google.common.cache.RemovalNotification) -> a
com.google.inject.internal.WeakKeySet$KeyAndSource -> f.f.f.y.l2$b:
java.lang.Object source -> b
com.google.inject.Key key -> a
132:135:void (com.google.inject.Key,java.lang.Object) ->
144:153:boolean equals(java.lang.Object) -> equals
139:139:int hashCode() -> hashCode
com.google.inject.Guice -> f.f.f.g:
50:50:void () ->
87:87:com.google.inject.Injector createInjector(com.google.inject.Stage,java.lang.Iterable) -> a
69:69:com.google.inject.Injector createInjector(java.lang.Iterable) -> b
```
Version 4.2.2 does not have this issue, so I had to roll back.
Contributor guide
Assessment
This issue has not been assessed yet.