使用ProGuard进行混淆后,jar文件无法运行

时间:2018-06-19 14:08:38

标签: java proguard obfuscation

我在jar文件中有应用。我尝试使用ProGuard对其进行混淆。 之前和之后的应用程序不再起作用。 有人知道如何解决吗?

我的配置

-injars obf.jar
-outjars final_obf.jar

-libraryjars C:\Program Files\Java\jdk1.8.0_161\jre\lib\rt.jar

-keep public class me.themajster.ts3bot.Ts3Bot { 
      public static void main(java.lang.String[]); 
}

-repackageclasses .asdgfewrrgs.f.as.f.as.g.sd.g..wa

-obfuscationdictionary names.txt

-dontwarn
-dontshrink
-dontoptimize
-overloadaggressively
-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,LocalVariable*Table,*Annotation*,Synthetic,EnclosingMethod

错误:

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.ClassFormatError: Invalid pc in LineNumberT                       able in class file me/themajster/ts3bot/Ts3Bot
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:14                       2)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:495)

0 个答案:

没有答案