public class NJavaSdkUtils extends Object
public List<JavaProvider> javaProviders()
public static NJavaSdkUtils of()
public static Integer defaultJavaMajorVersion()
public static Integer validateJavaMajorVersionOrDefault(String version)
public static Integer validateJavaMajorVersionOrDefault(NVersion version)
public NOptional<NRuntimeDistribution> resolveAndInstall(String product, NVersion version, NOsFamily os, NArchFamily arch, String vendor)
public static NOptional<Integer> validateJavaMajorVersion(NVersion version)
public static List<NClassLoaderNodeExt> loadNutsClassLoaderNodeExts(NClasspathEntry[] n, boolean java9)
public static boolean isJava(NId id)
protected NLog _LOG()
public Predicate<String> createVersionFilterPredicate(String requestedJavaVersion)
public Predicate<String> createVersionFilterPredicate(NVersionFilter versionFilter)
public NVersionFilter createVersionFilterExact(String requestedJavaVersion)
public NVersionFilter createVersionFilter(String requestedJavaVersion)
public NRuntimeDistribution getHostJvm()
public static NPath currentJavaHome()
java.home system property points to the nested jre folder, so the enclosing
folder is used whenever the executable is not found in the direct child.public static boolean isJavaVersionSpec(String javaVersion)
11, 1.8.0_452
or 21+35) rather than an alias such as current or a registered java installation name.javaVersion - java version specpublic static boolean isCurrentJavaSpec(String javaVersion)
javaVersion - java version speccurrentpublic NOptional<NRuntimeDistribution> findJavaDistributionByName(String name)
name - java installation namepublic NOptional<NRuntimeDistribution> resolveJavaDistribution(String javaVersion)
current : the java home of the currently running JVMNRuntimeDistribution of family java)javaVersion - java version specpublic NOptional<NRuntimeDistribution> resolveJdkLocation(String javaVersion, boolean jdk, boolean ifNotFoundSearchLocally, boolean ifNotFoundSearchRemotely, String remoteVendor)
public Predicate<NVersion> validateJavaVersion(NVersionFilter versionFilter)
public NRuntimeDistribution[] searchRemoteLocationsAndInstall(String product, NVersion version, String vendor)
public NRuntimeDistribution[] searchJdkLocations()
public Future<NRuntimeDistribution[]> searchJdkLocationsFuture()
public NRuntimeDistribution[] searchJdkLocations(NPath loc)
public Future<NRuntimeDistribution[]> searchJdkLocationsFuture(NPath s)
public NRuntimeDistribution resolveJdkLocation(NPath path, String preferredName)
public NOptional<String> resolveJavaCommandByVersion(String requestedJavaVersion, boolean javaw, boolean jdk, boolean ifNotFoundSearchLocally, boolean ifNotFoundSearchRemotely, String removeVendor)
public NOptional<String> resolveJavaCommandByVersion(NRuntimeDistribution nutsPlatformLocation, boolean javaw)
public static int normalizeJavaVersionAsInt(NVersion version)
Copyright © 2026 vpc open source initiative. All rights reserved.