@Override
    protected String buildApiSuperPath(final Class<?> clazz, @Nullable final ShenyuSpringMvcClient beanShenyuClient) {
        final String servletPath = StringUtils.defaultString(this.env.getProperty("spring.mvc.servlet.path"), "");
        final String servletContextPath = StringUtils.defaultString(this.env.getProperty("server.servlet.context-path"), "");
        final String rootPath = String.format("/%s/%s/", servletContextPath, servletPath);
        if (Objects.nonNull(beanShenyuClient) && StringUtils.isNotBlank(beanShenyuClient.path()[0])) {
            return formatPath(String.format("%s/%s", rootPath, beanShenyuClient.path()[0]));
        }
        RequestMapping requestMapping = AnnotationUtils.findAnnotation(clazz, RequestMapping.class);
        // Only the first path is supported temporarily
        if (Objects.nonNull(requestMapping) && ArrayUtils.isNotEmpty(requestMapping.path()) && StringUtils.isNotBlank(requestMapping.path()[0])) {
            return formatPath(String.format("%s/%s", rootPath, requestMapping.path()[0]));
        }
        return formatPath(rootPath);
    }
@Test
    public void testOnBuildApiSuperPath() {
        SpringMvcClientEventListener springMvcClientEventListener = buildSpringMvcClientEventListener(false, false);

        Assertions.assertEquals("/order", springMvcClientEventListener.buildApiSuperPath(
            SpringMvcClientTestBean.class, AnnotatedElementUtils.findMergedAnnotation(SpringMvcClientTestBean.class, ShenyuSpringMvcClient.class)), "super-path");

        when(env.getProperty("spring.mvc.servlet.path")).thenReturn("/servlet-path");
        when(env.getProperty("server.servlet.context-path")).thenReturn("/servlet-context-path");
        Assertions.assertEquals("/servlet-context-path/servlet-path/order", springMvcClientEventListener.buildApiSuperPath(
            SpringMvcClientTestBean.class, AnnotatedElementUtils.findMergedAnnotation(SpringMvcClientTestBean.class, ShenyuSpringMvcClient.class)), "super-path");
        registerUtilsMockedStatic.close();
    }