public static Method getDeclaredMethod(Class<?> c,
            String name, Class<?>... parameterTypes) {
        try {
            final Method m = c.getDeclaredMethod(name, parameterTypes);
            makeAccessible(m);
            return m;
        } catch (NoSuchMethodException ex) {
            throw new RuntimeException(ex);
        }
    }