java - ProGuard Android - JDBC 错误 - NullPointerException

标签 java android mysql jdbc proguard

我正在尝试使用 Proguard 来混淆我的 Android 应用程序。但我遇到了一个奇怪的问题,我希望你们中的一个人能够帮助我。

-keep class android.support.v4.** { *; }
-keep public class com.mysql.** {*;}  
-keep class com.actionbarsherlock.** {*;} 
-dontwarn android.support.v4.**
-dontwarn com.mysql.**
-libraryjars /libs/mysql-connector-java-5.1.27-bin.jar
-dontshrink
-keepattributes *Annotation*
正如你所看到的,我已经添加了 mysql JDBC lib 作为库和应该保留的类。但是当我尝试将项目编译为 .apk 文件时,我最终遇到了这个奇怪的错误。我不知道为什么,因为根据我的配置,它甚至不应该被触摸。

Proguard returned with error code 1. See console
Note: there were 508 duplicate class definitions.
You should check if you need to specify additional program jars.
Unexpected error while evaluating instruction:
Class       = [com/mysql/jdbc/ConnectionImpl]
Method      = [isReadOnly(Z)Z]
Instruction = [77] iload v4
Exception   = [java.lang.NullPointerException] (null)
Unexpected error while performing partial evaluation:
Class       = [com/mysql/jdbc/ConnectionImpl]
Method      = [isReadOnly(Z)Z]
Exception   = [java.lang.NullPointerException] (null)
Error: null

最佳答案

通过将 Proguard 更新到新的 5.0 版本来修复。

关于java - ProGuard Android - JDBC 错误 - NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25959240/

相关文章:

java - 小程序不显示任何内容

java - 无法在链表前面插入节点

java - Spring Solr 存储库

java - 数据库填充下拉菜单

android - 将 largeHeap 设置为 true 有什么好处?

android - 是否必须事先将 GraphQL 查询写入 .graphql 文件?或者我可以在代码中制作它们吗?

php - Laravel 5.2 使用 Eloquent 方法获取每行数据的 date_diff

android - 在哪里可以找到带超时的 Ksoap2 2.6

MySQL 工作台 : TroubleShooting Keys

php - 规范化的 MySQL 数据透视/行到没有唯一名称的列