寻找一些将职业选手放入项目的人的帮助 .
kotlin-reflect使用的注释(jackson-module-kotlin v v2.8.8所需的依赖关系)在升级到kotlin 1.1.2-3之后被剥离 . proguard的错误是: Warning:kotlin.reflect.jvm.internal.impl.descriptors.CallableDescriptor: can't find referenced class org.jetbrains.annotations.ReadOnly
这种情况发生在一些注释中,而不仅仅是ReadOnly . 我们尝试添加一个好的'捕获所有,但错误仍然存在:
-keep class org.jetbrains.kotlin.** { *; }
-keep class org.jetbrains.annotations.** { *; }
-keepclassmembers class ** {
@org.jetbrains.annotations.ReadOnly public *;
}
查看 ReadOnly
的来源是 @interface
,为 @Documented
, @RetentionPolicy.CLASS
, @Target
导入了 java.lang.annotations.*
2 回答
或更短的版本:
-dontwarn kotlin.reflect.jvm.internal.**
我们的修复是为反射警告添加
dontwarn
.这些注释存在于kotlin编译器中,这就是proguard无法找到它们的原因 . 只需忽略警告而不是将kotlin-compiler添加为依赖项(因为此问题建议Cannot resolve symbol @ReadOnly and @Mutable in Kotlin 1.1.0 compilation) .
这可能是kotlin反射中的一个错误;他们应该提供proguard规则来隐藏它以免集成应用程序 .