Proguard:在库 class java.lang.Throwable 中找不到引用的方法 'void addSuppressed(java.lang.Throwable)'
Proguard: can't find referenced method 'void addSuppressed(java.lang.Throwable)' in library class java.lang.Throwable
当 运行 ProGuard 我收到以下警告:
can't find referenced method 'void addSuppressed(java.lang.Throwable)' in library class java.lang.Throwable
这是我的混淆规则:
-injars build/libs/test-main-1.0.jar
-libraryjars /System/Library/Frameworks/JavaVM.framework/Classes/classes.jar
-dontoptimize
-dontobfuscate
-dontpreverify
-printusage
-dontnote
-keep public class com.foo.app.Main {
public static void main(java.lang.String[]);
}
-keepclassmembers class * {
static final % *;
static final java.lang.String *;
}
编辑:我在命令行中使用混淆器 proguard.jar。
如何防止此警告? Throwable 不是 classes.jar
的一部分吗?
Android 不支持 try with resources 语法中使用的 addSuppressed
方法。不要使用那种语法,你会没事的。
我通过在名为 build.gradle
的文件中将我的 SDK 版本 18 更改为 19 解决了这个问题:
旧:
compileSdkVersion 18
现在是:
compileSdkVersion 19
当 运行 ProGuard 我收到以下警告:
can't find referenced method 'void addSuppressed(java.lang.Throwable)' in library class java.lang.Throwable
这是我的混淆规则:
-injars build/libs/test-main-1.0.jar
-libraryjars /System/Library/Frameworks/JavaVM.framework/Classes/classes.jar
-dontoptimize
-dontobfuscate
-dontpreverify
-printusage
-dontnote
-keep public class com.foo.app.Main {
public static void main(java.lang.String[]);
}
-keepclassmembers class * {
static final % *;
static final java.lang.String *;
}
编辑:我在命令行中使用混淆器 proguard.jar。
如何防止此警告? Throwable 不是 classes.jar
的一部分吗?
Android 不支持 try with resources 语法中使用的 addSuppressed
方法。不要使用那种语法,你会没事的。
我通过在名为 build.gradle
的文件中将我的 SDK 版本 18 更改为 19 解决了这个问题:
旧:
compileSdkVersion 18
现在是:
compileSdkVersion 19