docs: public static List<String> getUiRunningIssues(AddOn.BaseRunRequirements requirements, AddOnSearcher addOnSearcher) {
          List<String> issues = new ArrayList<>(2);
          if (requirements.isNewerJavaVersionRequired()) {
              if (requirements.getAddOn() != requirements.getAddOnMinimumJavaVersion()) {
                  issues.add(Constant.messages.getString("cfu.warn.addon.with.missing.requirements.javaversion.dependency",
                          requirements.getMinimumJavaVersion(),
                          (SystemUtils.JAVA_VERSION == null
                                  ? Constant.messages.getString("cfu.warn.unknownJavaVersion")
                                  : SystemUtils.JAVA_VERSION),
                          requirements.getAddOnMinimumJavaVersion().getName()));
              } else {
                  issues.add(Constant.messages.getString("cfu.warn.addon.with.missing.requirements.javaversion",
                          requirements.getMinimumJavaVersion(),
                          (SystemUtils.JAVA_VERSION == null
                                  ? Constant.messages.getString("cfu.warn.unknownJavaVersion")
                                  : SystemUtils.JAVA_VERSION)));
              }
          }
  
          if (requirements.hasDependencyIssue()) {
              List<Object> issueDetails = requirements.getDependencyIssueDetails();
              AddOn addOn;
              String message = null;
              switch (requirements.getDependencyIssue()) {
              case CYCLIC:
                  message = Constant.messages.getString("cfu.warn.addon.with.missing.requirements.addon.id");
                  break;
              case OLDER_VERSION:
                  // Do not set a message, the state is already reported as requiring an update.
                  break;
              case MISSING:
                  String addOnId = (String) issueDetails.get(0);
                  if (addOnSearcher != null) {
                      addOn = addOnSearcher.searchAddOn(addOnId);
                  } else {
                      addOn = null;
                  }
                  if (addOn == null) {
                      message = Constant.messages.getString("cfu.warn.addon.with.missing.requirements.addon.id", addOnId);
  
                  } else {
                      message = Constant.messages.getString("cfu.warn.addon.with.missing.requirements.addon", addOn.getName());
                  }
                  break;
              case VERSION:
                  addOn = (AddOn) issueDetails.get(0);
                  message = Constant.messages.getString(
                          "cfu.warn.addon.with.missing.requirements.addon.version",
                          addOn.getName(),
                          issueDetails.get(1),
                          addOn.getSemVer() != null ? addOn.getSemVer() : addOn.getVersion());
                  break;
              default:
                  message = Constant.messages.getString("cfu.warn.addon.with.missing.requirements.unknown");
                  LOGGER.warn("Failed to handle dependency issue with name \"" + requirements.getDependencyIssue().name()
                          + "\" and details: " + issueDetails);
                  break;
              }
  
              if (message != null) {
                  issues.add(message);
              }
          }
          return issues;
      }