public static Environment of(@NonNull Properties props) {
        var environment = new Environment();
        environment.props = props;
        return environment;
    }
@Test
    public void testOf() {
        Environment environment = Environment.of("application.properties");
        Optional<String> version = Objects.requireNonNull(environment).get("app.version");
        String lang = environment.get("app.lang", "cn");

        assertEquals("0.0.2", version.orElse(""));
        assertEquals("cn", lang);

        environment = Environment.of("classpath:application.properties");
        version = Objects.requireNonNull(environment).get("app.version");
        lang = environment.get("app.lang", "cn");

        assertEquals("0.0.2", version.orElse(""));
        assertEquals("cn", lang);
    }