docs: private static String inferSpotBugsHome() {
          Pattern[] findbugsJarNames = { Pattern.compile("spotbugs\\.jar$"), };
  
          for (Pattern jarNamePattern : findbugsJarNames) {
              String findbugsJarCodeBase = ClassPathUtil.findCodeBaseInClassPath(jarNamePattern,
                      SystemProperties.getProperty("java.class.path"));
              if (findbugsJarCodeBase != null) {
                  File findbugsJar = new File(findbugsJarCodeBase);
                  File libDir = findbugsJar.getParentFile();
                  if (libDir != null && "lib".equals(libDir.getName())) {
                      String fbHome = libDir.getParent();
                      FindBugs.setHome(fbHome);
                      return fbHome;
                  }
              }
          }
          String classFilePath = FindBugs.class.getName().replaceAll("\\.", "/") + ".class";
          URL resource = FindBugs.class.getClassLoader().getResource(classFilePath);
          if (resource != null && "file".equals(resource.getProtocol())) {
              try {
                  String classfile = URLDecoder.decode(resource.getPath(), Charset.defaultCharset().name());
                  Matcher m = Pattern.compile("(.*)/.*?/edu/umd.*").matcher(classfile);
                  if (m.matches()) {
                      String home = m.group(1);
                      if (new File(home + "/etc/findbugs.xml").exists()) {
                          FindBugs.setHome(home);
                          return home;
                      }
                  }
              } catch (UnsupportedEncodingException e) {
              }
          }
          return null;
  
      }