private static String getJDKMajorVersion()

in gradle-plugins/jdk-version-probe/src/main/java/org/jetbrains/compose/desktop/application/internal/JdkVersionProbe.java [22:44]


    private static String getJDKMajorVersion() {
        Class<Runtime> runtimeClass = Runtime.class;
        try {
            Method version = runtimeClass.getMethod("version");
            Object runtimeVer = version.invoke(runtimeClass);
            Class<?> runtimeVerClass = runtimeVer.getClass();
            try {
                int feature = (int) runtimeVerClass.getMethod("feature").invoke(runtimeVer);
                return (Integer.valueOf(feature)).toString();
            } catch (NoSuchMethodException e) {
                int major = (int) runtimeVerClass.getMethod("major").invoke(runtimeVer);
                return (Integer.valueOf(major)).toString();
            }
        } catch (Exception e) {
            String javaVersion = System.getProperty("java.version");
            String[] parts = javaVersion.split("\\.");
            if (parts.length > 2 && "1".equalsIgnoreCase(parts[0])) {
                return parts[1];
            } else {
                throw new IllegalStateException("Could not determine JDK version from string: '" + javaVersion + "'");
            }
        }
    }