Java Proguard由于特定的第三方库而产生运行时错误
最近我用Android完成了一个大项目的构建,发布之前的最后一个要求是,它将使用Proguard进行编译,我认为这将是项目中最简单的部分,但对我来说,这是一个非常可怕的经历 在这个项目中,我使用了几个第三方库,至少从我目前的检查来看,它们似乎都可以很好地与我的Proguard配置配合使用 有问题的库是,它没有关于如何使用Proguard配置它的文档,我尝试了很多不同的配置,但没有一个解决这个问题 仅当我将这一行放入代码(从该库调用类)时,才会发生错误:Java Proguard由于特定的第三方库而产生运行时错误,java,android,gradle,proguard,android-proguard,Java,Android,Gradle,Proguard,Android Proguard,最近我用Android完成了一个大项目的构建,发布之前的最后一个要求是,它将使用Proguard进行编译,我认为这将是项目中最简单的部分,但对我来说,这是一个非常可怕的经历 在这个项目中,我使用了几个第三方库,至少从我目前的检查来看,它们似乎都可以很好地与我的Proguard配置配合使用 有问题的库是,它没有关于如何使用Proguard配置它的文档,我尝试了很多不同的配置,但没有一个解决这个问题 仅当我将这一行放入代码(从该库调用类)时,才会发生错误: Jwts.builder() 错误如下:
Jwts.builder()代码>
错误如下:
java.lang.ExceptionInInitializeError
位于io.jsonwebtoken.Jwts.builder(ProGuard:116)
在
com.cineworld.app.screen_options.webpage.PurchaseWebPage.GenerateToken(ProGuard:216)
在
com.cineworld.app.screen_options.webpage.PurchaseWebPage.onCreateView(ProGuard:142)
位于android.app.Fragment.performCreateView(Fragment.java:1699)
在
android.app.FragmentManagerImpl.moveToState(FragmentManager.java:885)
在
FragmentManagerImpl.moveToState(FragmentManager.java:1057)
运行(BackStackRecord.java:682)
在
FragmentManagerImpl.execPendingActions(FragmentManager.java:1435)
在android.app.FragmentManagerImpl$1.run(FragmentManager.java:441)
位于android.os.Handler.handleCallback(Handler.java:725)
位于android.os.Handler.dispatchMessage(Handler.java:92)
位于android.os.Looper.loop(Looper.java:137)
位于android.app.ActivityThread.main(ActivityThread.java:5041)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:511)
在
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
在dalvik.system.NativeStart.main(本机方法)
原因:java.lang.ExceptionInInitializeError
位于io.jsonwebtoken.impl.DefaultJwtBuilder(ProGuard:42)
位于io.jsonwebtoken.Jwts.builder(ProGuard:116)
在
com.cineworld.app.screen_options.webpage.PurchaseWebPage.GenerateToken(ProGuard:216)
在
com.cineworld.app.screen_options.webpage.PurchaseWebPage.onCreateView(ProGuard:142)
位于android.app.Fragment.performCreateView(Fragment.java:1699)
在
android.app.FragmentManagerImpl.moveToState(FragmentManager.java:885)
在
FragmentManagerImpl.moveToState(FragmentManager.java:1057)
运行(BackStackRecord.java:682)
在
FragmentManagerImpl.execPendingActions(FragmentManager.java:1435)
在android.app.FragmentManagerImpl$1.run(FragmentManager.java:441)
位于android.os.Handler.handleCallback(Handler.java:725)
位于android.os.Handler.dispatchMessage(Handler.java:92)
位于android.os.Looper.loop(Looper.java:137)
位于android.app.ActivityThread.main(ActivityThread.java:5041)
位于java.lang.reflect.Method.Invokenactive(本机方法)
位于java.lang.reflect.Method.invoke(Method.java:511)
在
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
-keep class io.jsonwebtoken.** {
public protected private *;
}