code: public void execute() throws Exception {
          final var jsonFile = new File(buildDir, "classes/java/main/META-INF/spring-configuration-metadata.json");
          if (!jsonFile.exists()) {
              throw new RuntimeException("Could not locate file " + jsonFile.getCanonicalPath());
          }
          final var mapper = new ObjectMapper().findAndRegisterModules();
          mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
          mapper.enable(MapperFeature.ACCEPT_CASE_INSENSITIVE_ENUMS);
  
          final TypeReference<Map<String, Set<ConfigurationMetadataProperty>>> values = new TypeReference<>() {
          };
          final Map<String, Set> jsonMap = mapper.readValue(jsonFile, values);
          final Set<ConfigurationMetadataProperty> properties = jsonMap.get("properties");
          final Set<ConfigurationMetadataProperty> groups = jsonMap.get("groups");
  
          final Set<ConfigurationMetadataProperty> collectedProps = new HashSet<>();
          final Set<ConfigurationMetadataProperty> collectedGroups = new HashSet<>();
  
          properties.stream()
              .filter(p -> NESTED_TYPE_PATTERN.matcher(p.getType()).matches())
              .forEach(Unchecked.consumer(p -> {
                  final var matcher = NESTED_TYPE_PATTERN.matcher(p.getType());
                  final var indexBrackets = matcher.matches();
                  final var typeName = matcher.group(1);
                  final var typePath = ConfigurationMetadataClassSourceLocator.buildTypeSourcePath(this.sourcePath, typeName);
  
                  final var parser = new ConfigurationMetadataUnitParser(this.sourcePath);
                  parser.parseCompilationUnit(collectedProps, collectedGroups, p, typePath, typeName, indexBrackets);
              }));
  
          properties.addAll(collectedProps);
          groups.addAll(collectedGroups);
  
          final var hints = processHints(properties, groups);
  
          processNestedEnumProperties(properties, groups);
  
          jsonMap.put("properties", properties);
          jsonMap.put("groups", groups);
          jsonMap.put("hints", hints);
  
          mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
          final var pp = new MinimalPrettyPrinter();
          final var writer = mapper.writer(pp);
          writer.writeValue(jsonFile, jsonMap);
      }
docs: Execute.
  
  @throws Exception the exception