code: public static AppDescriptor of(String appName, Class<?> entryClass) {
          System.setProperty("osgl.version.suppress-var-found-warning", "true");
          return of(appName, entryClass, Version.of(entryClass));
      }
docs: Create an `AppDescriptor` with appName and entry class specified.
  
  If `appName` is `null` or blank, it will try the following
  approach to get app name:
  
  1. check the {@link Version#getArtifactId() artifact id} and use it unless
  2. if artifact id is null or empty, then infer app name using {@link AppNameInferer}
  
  @param appName
  the app name
  @param entryClass
  the entry class
  @return
  an `AppDescriptor` instance