public static Value getJdiValue(Expression exp) {
ThreadReference threadRef = checkAndGetCurrentThread();
try {
SuspendThreadStack threadStack = SuspendThreadStack.getInstance();
StackFrame stackFrame = threadRef.frame(threadStack.getCurFrame());
ObjectReference thisObj = stackFrame.thisObject();
Value value = eval(threadRef, exp, thisObj,false);
return value;
} catch (IncompatibleThreadStateException e) {
throw new ExpressionEvalException("eval expression error, caused by : " + e.getMessage());
}