snaker-core/src/main/java/org/snaker/engine/helper/ReflectHelper.java
public static Object invoke(Method method, Object target, Object[] args) {
		if (method == null) {
			throw new SnakerException("方法不能为空");
		}
		try {
			if (!method.isAccessible()) {
				method.setAccessible(true);
			}
			return method.invoke(target, args);
		} catch (InvocationTargetException e) {
			Throwable targetException = e.getTargetException();
			throw new SnakerException("不能调用 '" + method.getName() + "' with "
					+ Arrays.toString(args) + " on " + target + ": "
					+ targetException.getMessage(), targetException);
		} catch (Exception e) {
			throw new SnakerException("不能调用 '" + method.getName() + "' with "
					+ Arrays.toString(args) + " on " + target + ": "
					+ e.getMessage(), e);
		}
	}
public static Object invoke(Method method, Object target, Object[] args) {
		if (method == null) {
			throw new SnakerException("方法不能为空");
		}
		try {
			if (!method.isAccessible()) {
				method.setAccessible(true);
			}
			return method.invoke(target, args);
		} catch (InvocationTargetException e) {
			Throwable targetException = e.getTargetException();
			throw new SnakerException("不能调用 '" + method.getName() + "' with "
					+ Arrays.toString(args) + " on " + target + ": "
					+ targetException.getMessage(), targetException);
		} catch (Exception e) {
			throw new SnakerException("不能调用 '" + method.getName() + "' with "
					+ Arrays.toString(args) + " on " + target + ": "
					+ e.getMessage(), e);
		}
	}
根据指定的对象、方法、参数反射调用，并返回调用结果
@param method 方法
@param target 对象
@param args 参数数组
@return 方法调用的返回数据