code: public static List<Language> get() {
      List<Language> result = new ArrayList<>();
      for (Language lang : getStaticAndDynamicLanguages()) {
        if (!"xx".equals(lang.getShortCode()) && !"zz".equals(lang.getShortCode())) {  // skip demo and noop language
          result.add(lang);
        }
      }
      return Collections.unmodifiableList(result);
    }
docs: Language classes are detected at runtime by searching the classpath for files named
  {@code META-INF/org/languagetool/language-module.properties}. Those file(s)
  need to contain a key {@code languageClasses} which specifies the fully qualified
  class name(s), e.g. {@code org.languagetool.language.English}. Use commas to specify
  more than one class.
  @return an unmodifiable list of all supported languages