Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Exception Proguard-如何解析org.glassfish.jersey.internal.RuntimeDelegateImpl无法实例化异常?_Exception_Jar_Glassfish_Proguard_Obfuscation - Fatal编程技术网

Exception Proguard-如何解析org.glassfish.jersey.internal.RuntimeDelegateImpl无法实例化异常?

Exception Proguard-如何解析org.glassfish.jersey.internal.RuntimeDelegateImpl无法实例化异常?,exception,jar,glassfish,proguard,obfuscation,Exception,Jar,Glassfish,Proguard,Obfuscation,我不熟悉混淆代码。我正在使用Proguard混淆一个大文件mycompanyrepo.jar(75MB)。我确实创建了一个proguard.cfg文件,并放置了proguard选项,如-injar、-outjar、-libraryjars、-dontwarn、-ignorewarnings、-keep选项等,以确保构建成功。生成新的mycompany-obfuscated.jar。我在Vagrant VM中部署了它,它在使用功能时开始抛出如下异常。基本上,它坏了。我提取了mycompany-ob

我不熟悉混淆代码。我正在使用Proguard混淆一个大文件mycompanyrepo.jar(75MB)。我确实创建了一个proguard.cfg文件,并放置了proguard选项,如-injar、-outjar、-libraryjars、-dontwarn、-ignorewarnings、-keep选项等,以确保构建成功。生成新的mycompany-obfuscated.jar。我在Vagrant VM中部署了它,它在使用功能时开始抛出如下异常。基本上,它坏了。我提取了mycompany-obfuscated.jar并查看了它的内部,以查看proguard对哪些类进行了模糊处理,似乎它对每个lib jar(包括com.mycompany.mysrc包)都进行了模糊处理。我试图解决以下异常,我不知道如何解决它。在分解的mycompany-obfuscated.jar中,我可以看到几乎所有的文件夹,并看到它抛出异常的特定类,例如org.glassfish.jersey.internal.RuntimeDelegateImpl

下面是proguard.cfg文件和异常详细信息

Proguard.cfg

-injars C:\Users\user1\Desktop\test\t1\mycompany.jar
-outjars C:\Users\user1\Desktop\test\t1\mycompany-obfuscate.jar

-keep class org.python.core.** { *; }
-keep class **Cookie$py { *; }
-keep class org.python.core.PyObject { *; }
-keep class org.python.core.ThreadState { *; }

-keep class org.glassfish.jersey.internal.** { *; 
-keep interface org.glassfish.jersey.internal.** { *; }
-keep class org.glassfish.jersey.internal.RuntimeDelegateImpl { *; }
-keep class org.glassfish.hk2.utilities.ServiceLocatorUtilities { *; }
-keep class org.glassfish.hk2.internal.** { *; }
-keep interface org.glassfish.hk2.internal.** { *; }
-keep class java.lang.reflect.** { *; }
-keep class sun.reflect.** { *; }
-keep class java.lang.** { *; }
-keep class org.glassfish.jersey.client.JerseyClient { *; }
-dontusemixedcaseclassnames  
-dontskipnonpubliclibraryclasses 
-dontskipnonpubliclibraryclassmembers 
-useuniqueclassmembername
-dontoptimize
-adaptresourcefilenames

-dontwarn org.springframework.**
-dontwarn org.apache.**
-dontwarn net.sf.**
-dontwarn com.jcraft.**
-dontwarn com.codehale.**
-dontwarn com.ctc.**
-dontwarn org.python.**
-dontwarn org.owasp.**
-dontwarn storm.kafka.**
-dontwarn backtype.storm.**
-dontwarn clojure.**
-dontwarn io.netty.**
-dontwarn com.xhaus.**
-dontwarn org.python.core.Py.**
-dontwarn mathexpressions.** 
-dontwarn mpmath.** 
-dontwarn org.python.__init__$py
-dontwarn mathexpressions.__init__$py
-dontnote javax.xml.xpath.**
-dontnote org.jcp.xml.dsig.**
-dontnote org.w3c.dom.**
-dontnote org.xml.sax.**
-dontnote javax.xml.parsers.**
-dontnote javax.activation.**
-dontnote javax.xml.crypto.**
-dontnote javax.xml.XMLConstants**
-dontnote javax.xml.datatype.**
-dontnote javax.xml.namespace.**
-dontnote javax.xml.stream.**
-dontnote javax.xml.transform.**
-dontnote javax.xml.validation.**
-dontnote com.sun.activation.**
-dontnote javax.annotation.**
-dontnote javax.transaction.**
-dontnote javax.activation.**

-dontwarn com.sun.xml.bind.v2.runtime.**
-dontwarn com.ziclix.python.sql.**
-dontwarn org.glassfish.**
-dontwarn org.xerial.**
-dontwarn com.sun.org.**
-dontwarn com.sun.beans.**
-dontwarn com.sun.istack.**
-dontwarn com.sun.xml.internal.**
-dontwarn javax.util.prefs.**
-dontwarn javax.imageio.**
-dontwarn javax.swing.**
-dontwarn javax.xml.bind.**
-dontwarn jline.**
-dontwarn org.jcp.xml.**
-dontwarn com.datastax.driver.core.**
-dontwarn com.mycompany.dmip.script.datatype.converter.**
-dontwarn com.kenai.**
-dontwarn javaassist.util.**
-dontwarn javax.cache.annotation.**
-dontwarn javax.mail.**
-dontwarn org.joda.**
-dontwarn org.opensaml.xml.**
-dontwarn org.quartz.jobs.**
-dontwarn javax.sql.**
-dontwarn com.sun.xml.bind.v2.runtime.output.**
-dontwarn com.sun.rowset.**
-dontwarn java.util.prefs.**
-dontwarn javax.xml.crypto.**
-dontwarn javax.xml.soap.**
-dontwarn sun.util.xml.**
-dontwarn com.netflix.**
-dontwarn com.sun.xml.bind.v3.runtime.output.**
-dontwarn com.sun.xml.bind.v2.runtime.unmarshaller.**
-dontwarn com.ziclix.python.sql.**
-dontwarn javassist.util.**
-dontwarn kafka.admin.**
-dontwarn org.opensaml.common.binding.artifact.**
-dontwarn org.opensaml.ws.soap.client.**
-dontwarn org.opensaml.common.impl.**
-dontwarn java.sql.**
-dontwarn javax.xml.transform.**

-ignorewarnings

-keepattributes *Annotation*,Exceptions,InnerClasses,Signature,Deprecated,EnclosingMethod

-keepclasseswithmembernames,includedescriptorclasses class * {
    native <methods>;
}

-keepclassmembers,allowoptimization enum * {
    public static **[] values();
    public static ** valueOf(java.lang.String);
}

-keepclassmembers class * implements java.io.Serializable {
    static final long serialVersionUID;
    static final java.io.ObjectStreamField[] serialPersistentFields;
    private void writeObject(java.io.ObjectOutputStream);
    private void readObject(java.io.ObjectInputStream);
    java.lang.Object writeReplace();
    java.lang.Object readResolve();
}

-keepclassmembernames class * {
    java.lang.Class class$(java.lang.String);
    java.lang.Class class$(java.lang.String, boolean);
}


-keep public class * {
    public protected *;
}
-keepclasseswithmembernames,includedescriptorclasses class * {
                native <methods>;
}
-printseeds
-printmapping proguard.map
-verbose
-injars C:\Users\user1\Desktop\test\t1\mycompany.jar
-outjars C:\Users\user1\Desktop\test\t1\mycompany-obfuscate.jar
-保持类org.python.core.*{*;}
-保持类**Cookie$py{*;}
-保持类org.python.core.PyObject{*;}
-保持类org.python.core.ThreadState{*;}
-保持类org.glassfish.jersey.internal.*{*;
-保持接口org.glassfish.jersey.internal.*{*;}
-keep类org.glassfish.jersey.internal.RuntimeDelegateImpl{*;}
-保持类org.glassfish.hk2.utilities.ServiceLocatorUtilities{*;}
-保持类org.glassfish.hk2.internal.*{*;}
-保持接口org.glassfish.hk2.internal.*{*;}
-保持类java.lang.reflect.*{*;}
-保持课堂阳光。反射。**{*;}
-保持类java.lang.*{*;}
-保持类org.glassfish.jersey.client.JerseyClient{*;}
-dontusemixedcaseclassnames
-DontskipnonPublicLibraryClass
-dontskipnonpubliclibraryclassmembers
-useuniqueclassmembername
-dontoptimize
-自适应资源文件名
-dontwarn org.springframework**
-dontwarn org.apache**
-dontwarn net.sf**
-dontwarn com.jcraft**
-dontwarn com.codehale**
-dontwarn com.ctc**
-dontwarn org.python**
-dontwarn org.owasp**
-唐特沃恩·斯托姆,卡夫卡**
-dontwarn backtype.storm**
-dontwarn clojure**
-dontwarn io.netty**
-dontwarn com.xhaus**
-dontwarn org.python.core.Py**
-dontwarn mathexpressions.**
-dontwarn数学硕士。**
-dontwarn org.python.\uuuu init\uuuuuu$py
-dontwarn mathexpressions.\uuuuu init\uuuuuuuuu$py
-dontnotejavax.xml.xpath**
-dontnote org.jcp.xml.dsig**
-dontnote org.w3c.dom**
-dontnote org.xml.sax**
-dontnote javax.xml.parsers**
-dontnotejavax.activation**
-dontnote javax.xml.crypto**
-dontnote javax.xml.xml常量**
-dontnote javax.xml.datatype**
-dontnote javax.xml.namespace**
-dontnote javax.xml.stream**
-dontnote javax.xml.transform**
-dontnote javax.xml.validation**
-dontnote com.sun.activation**
-dontnotejavax.annotation**
-dontnotejavax.transaction**
-dontnotejavax.activation**
-dontwarn com.sun.xml.bind.v2.runtime**
-dontwarn com.ziclix.python.sql**
-dontwarn org.glassfish**
-dontwarn org.xerial**
-dontwarn com.sun.org**
-dontwarn com.sun.beans**
-dontwarn com.sun.istack**
-dontwarn com.sun.xml.internal**
-dontwarn javax.util.prefs**
-dontwarn javax.imageio**
-dontwarn javax.swing**
-dontwarn javax.xml.bind**
-dontwarn jline**
-dontwarn org.jcp.xml**
-dontwarn com.datastax.driver.core**
-dontwarn com.mycompany.dmip.script.datatype.converter**
-dontwarn com.kenai**
-dontwarn javaassist.util**
-dontwarn javax.cache.annotation**
-dontwarn javax.mail**
-dontwarn org.joda**
-dontwarn org.opensaml.xml**
-dontwarn org.quartz.jobs**
-dontwarn javax.sql**
-dontwarn com.sun.xml.bind.v2.runtime.output**
-dontwarn com.sun.rowset**
-dontwarn java.util.prefs**
-dontwarn javax.xml.crypto**
-dontwarn javax.xml.soap**
-dontwarn sun.util.xml**
-dontwarn com.netflix**
-dontwarn com.sun.xml.bind.v3.runtime.output**
-dontwarn com.sun.xml.bind.v2.runtime.unmarshaller**
-dontwarn com.ziclix.python.sql**
-dontwarn javassist.util**
-dontwarn kafka.admin**
-dontwarn org.opensaml.common.binding.artifact**
-dontwarn org.opensaml.ws.soap.client**
-dontwarn org.opensaml.common.impl**
-dontwarn java.sql**
-dontwarn javax.xml.transform**
-忽视警告
-keepattributes*注释*、异常、内部类、签名、已弃用、封闭方法
-KeepClassswithMemberNames,includedescriptorclasses类*{
本地人;
}
-keepclassmembers,allowoptimization枚举*{
公共静态**[]值();
公共静态**valueOf(java.lang.String);
}
-keepclassmembers类*实现java.io.Serializable{
静态最终长SerialVersionId;
静态final java.io.ObjectStreamField[]serialPersistentFields;
私有void writeObject(java.io.ObjectOutputStream);
私有void readObject(java.io.ObjectInputStream);
java.lang.Object WriterReplace();
java.lang.Object readResolve();
}
-keepclassmembernames类*{
java.lang.Class类$(java.lang.String);
java.lang.Class类$(java.lang.String,布尔值);
}
-保持公开课*{
受公众保护*;
}
-KeepClassswithMemberNames,includedescriptorclasses类*{
本地人;
}
-版画种子
-printmapping proguard.map
-冗长的
例外情况:

java.lang.RuntimeException: java.lang.ClassNotFoundException: Provider org.glassfish.jersey.internal.RuntimeDelegateImpl could not be instantiated: java.lang.NullPointerException
        at javax.ws.rs.ext.RuntimeDelegate.findDelegate(Unknown Source) ~[dmipDPC.jar:?]
        at javax.ws.rs.ext.RuntimeDelegate.getInstance(Unknown Source) ~[dmipDPC.jar:?]
        at javax.ws.rs.core.UriBuilder.newInstance(Unknown Source) ~[dmipDPC.jar:?]
        at javax.ws.rs.core.UriBuilder.fromUri(Unknown Source) ~[dmipDPC.jar:?]
        at org.glassfish.jersey.client.JerseyWebTarget.<init>(Unknown Source) ~[dmipDPC.jar:?]
        at org.glassfish.jersey.client.JerseyClient.target(Unknown Source) ~[dmipDPC.jar:?]
        at org.glassfish.jersey.client.JerseyClient.target(Unknown Source) ~[dmipDPC.jar:?]
        at com.mycompany.dmip.common.builder.a.b.b(Unknown Source) ~[job-builder.jar:?]
        at com.mycompany.dmip.a.a.b.a(Unknown Source) ~[job-builder.jar:?]
        at com.mycompany.dmip.common.builder.manager.JobBuilderManager.b(Unknown Source) ~[job-builder.jar:?]
        at com.mycompany.dmip.common.builder.manager.JobBuilderManager.main(Unknown Source) [job-builder.jar:?]
    Caused by: java.lang.ClassNotFoundException: Provider org.glassfish.jersey.internal.RuntimeDelegateImpl could not be instantiated: java.lang.NullPointerException
        at javax.ws.rs.ext.a.e(Unknown Source) ~[dmipDPC.jar:?]
        at javax.ws.rs.ext.a.find(Unknown Source) ~[dmipDPC.jar:?]
        ... 11 more
    Caused by: java.lang.NullPointerException
        at org.glassfish.hk2.utilities.ServiceLocatorUtilities.enablePerThreadScope(Unknown Source) ~[dmipDPC.jar:?]
        at org.glassfish.jersey.internal.inject.Injections._createLocator(Unknown Source) ~[dmipDPC.jar:?]
        at org.glassfish.jersey.internal.inject.Injections.createLocator(Unknown Source) ~[dmipDPC.jar:?]
        at org.glassfish.jersey.internal.RuntimeDelegateImpl.<init>(Unknown Source) ~[dmipDPC.jar:?]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_111]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_111]
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_111]
        at java.lang.reflect.Constructo`enter code here`r.newInstance(Constructor.java:423) ~[?:1.8.0_111]
        at java.lang.Class.newInstance(Class.java:442) ~[?:1.8.0_111]
        at javax.ws.rs.ext.a.e(Unknown Source) ~[dmipDPC.jar:?]
        at javax.ws.rs.ext.a.find(Unknown Source) ~[dmipDPC.jar:?]
        ... 11 more 
java.lang.RuntimeException:java.lang.ClassNotFoundException:Provider org.glassfish.jersey.internal.RuntimeDelegateImpl无法实例化:java.lang.NullPointerException
在javax.ws.rs.ext.RuntimeDelegate.findDelegate(未知源)~[dmipDPC.jar:?]
在javax.ws.rs.ext.RuntimeDelegate.getInstance(未知源)~[dmipDPC.jar:?]
在javax.ws.rs.core.UriBuilder.newInstance(未知源)~[dmipDPC.jar:?]
在javax.ws.rs.core.UriBuilder.fromUri(未知源)~[dmipDPC.jar:?]
位于org.glassfish.jersey.client.JerseyWebTarge