code: private void tryRegisterGuava() {
          try {
              // Guava is not a direct dependency, which is significant in the Java 9 module system
              // to access Guava this module must add a read edge to the module graph
              // but since this code is written for Java 6, we have to do this by reflection
              // yuck
              Class<?> moduleClass = Class.class.getMethod("getModule").getReturnType();
              Object convertModule = Class.class.getMethod("getModule").invoke(StringConvert.class);
              Object layer = convertModule.getClass().getMethod("getLayer").invoke(convertModule);
              if (layer != null) {
                  Object optGuava = layer.getClass().getMethod("findModule", String.class).invoke(layer, "com.google.common");
                  boolean found = (Boolean) optGuava.getClass().getMethod("isPresent").invoke(optGuava);
                  if (found) {
                      Object guavaModule = optGuava.getClass().getMethod("get").invoke(optGuava);
                      moduleClass.getMethod("addReads", moduleClass).invoke(convertModule, guavaModule);
                  }
              }
  
          } catch (Throwable ex) {
              if (LOG) {
                  System.err.println("tryRegisterGuava1: " + ex);
              }
          }
          try {
              // can now check for Guava
              // if we have created a read edge, or if we are on the classpath, this will succeed
              loadType("com.google.common.reflect.TypeToken");
              @SuppressWarnings("unchecked")
              Class<?> cls = (Class<TypedStringConverter<?>>) loadType("org.joda.convert.TypeTokenStringConverter");
              TypedStringConverter<?> conv = (TypedStringConverter<?>) cls.getDeclaredConstructor().newInstance();
              registered.put(conv.getEffectiveType(), conv);
  
          } catch (Throwable ex) {
              if (LOG) {
                  System.err.println("tryRegisterGuava2: " + ex);
              }
          }
      }
docs: Tries to register the Guava converters class.