[Soot-list] OpenJDK Update Breaks Analyses
Marc-Andre Laverdiere-Papineau
marc-andre.laverdiere-papineau at polymtl.ca
Wed Jan 16 15:59:12 EST 2013
Hello people,
I wanted to give that information to others, with the hope I'll save
some hair pulling ;)
I'm pasting the exception below. But note that if this happens for you
as well, you can switch to Oracle's JDK and it stops happening.
Anybody knows how to make Soot resilient against that kind of stuff???
That is the exception.
Exception in thread "main"
soot.SootMethodRefImpl$ClassResolutionFailedException: Class
java.lang.invoke.MethodHandle doesn't have method
invokeExact([java.lang.Class, java.lang.Class]) : boolean; failed to
resolve in superclasses and interfacesLooking in
java.lang.invoke.MethodHandle which has methods
[<java.lang.invoke.MethodHandle: java.lang.invoke.MethodType type()>,
<java.lang.invoke.MethodHandle: void
<init>(java.lang.invoke.MethodType)>, <java.lang.invoke.MethodHandle:
java.lang.Object invokeExact(java.lang.Object[])>,
<java.lang.invoke.MethodHandle: java.lang.Object
invoke(java.lang.Object[])>, <java.lang.invoke.MethodHandle:
java.lang.Object invokeWithArguments(java.lang.Object[])>,
<java.lang.invoke.MethodHandle: java.lang.Object
invokeWithArguments(java.util.List)>, <java.lang.invoke.MethodHandle:
java.lang.invoke.MethodHandle asType(java.lang.invoke.MethodType)>,
<java.lang.invoke.MethodHandle: java.lang.invoke.MethodHandle
asSpreader(java.lang.Class,int)>, <java.lang.invoke.MethodHandle: void
asSpreaderChecks(java.lang.Class,int)>, <java.lang.invoke.MethodHandle:
void spreadArrayChecks(java.lang.Class,int)>,
<java.lang.invoke.MethodHandle: java.lang.invoke.MethodHandle
asCollector(java.lang.Class,int)>, <java.lang.invoke.MethodHandle:
boolean asCollectorChecks(java.lang.Class,int)>,
<java.lang.invoke.MethodHandle: java.lang.invoke.MethodHandle
asVarargsCollector(java.lang.Class)>, <java.lang.invoke.MethodHandle:
boolean isVarargsCollector()>, <java.lang.invoke.MethodHandle:
java.lang.invoke.MethodHandle asFixedArity()>,
<java.lang.invoke.MethodHandle: java.lang.invoke.MethodHandle
bindTo(java.lang.Object)>, <java.lang.invoke.MethodHandle:
java.lang.String toString()>, <java.lang.invoke.MethodHandle:
java.lang.String debugString()>, <java.lang.invoke.MethodHandle: void
<clinit>()>]
Looking in java.lang.Object which has methods [<java.lang.Object: void
<init>()>, <java.lang.Object: void registerNatives()>,
<java.lang.Object: java.lang.Class getClass()>, <java.lang.Object: int
hashCode()>, <java.lang.Object: boolean equals(java.lang.Object)>,
<java.lang.Object: java.lang.Object clone()>, <java.lang.Object:
java.lang.String toString()>, <java.lang.Object: void notify()>,
<java.lang.Object: void notifyAll()>, <java.lang.Object: void
wait(long)>, <java.lang.Object: void wait(long,int)>, <java.lang.Object:
void wait()>, <java.lang.Object: void finalize()>, <java.lang.Object:
void <clinit>()>]
--
Marc-André Laverdière-Papineau
Doctorant - PhD Candidate
More information about the Soot-list
mailing list