diff --git a/moshi/pom.xml b/moshi/pom.xml
index 9361fca716..b9b32817bf 100644
--- a/moshi/pom.xml
+++ b/moshi/pom.xml
@@ -13,6 +13,11 @@
Moshi
+
+ androidx.annotation
+ annotation
+ 1.1.0
+
com.squareup.okio
okio
@@ -34,6 +39,14 @@
+
+
+ google
+ Google
+ https://maven.google.com/
+
+
+
diff --git a/moshi/src/main/java/com/squareup/moshi/internal/Util.java b/moshi/src/main/java/com/squareup/moshi/internal/Util.java
index b9367645c3..0f4ce82add 100644
--- a/moshi/src/main/java/com/squareup/moshi/internal/Util.java
+++ b/moshi/src/main/java/com/squareup/moshi/internal/Util.java
@@ -15,6 +15,7 @@
*/
package com.squareup.moshi.internal;
+import androidx.annotation.Keep;
import com.squareup.moshi.JsonAdapter;
import com.squareup.moshi.JsonClass;
import com.squareup.moshi.JsonDataException;
@@ -54,7 +55,7 @@ public final class Util {
Class extends Annotation> metadata = null;
try {
//noinspection unchecked
- metadata = (Class extends Annotation>) Class.forName("kotlin.Metadata");
+ metadata = (Class extends Annotation>) Class.forName(getKotlinMetadataClassNameForReflection());
} catch (ClassNotFoundException ignored) {
}
METADATA = metadata;
@@ -69,6 +70,11 @@ public final class Util {
DEFAULT_CONSTRUCTOR_MARKER = defaultConstructorMarker;
}
+ @Keep /* Kept to avoid optimizing out reflection. */
+ private static String getKotlinMetadataClassNameForReflection() {
+ return "kotlin.Metadata";
+ }
+
private Util() {
}