@Override public String toString() { if (userSupplied) { return "User-supplied java: " + javaBase; } return SystemProperties.getInstance().getJavaVersion() + " (" + System.getProperty("java.vm.vendor") + " " + System.getProperty("java.vm.version") + ")"; }
private File findToolsJar(File javaHome) { File toolsJar = new File(javaHome, "lib/tools.jar"); if (toolsJar.exists()) { return toolsJar; } if (javaHome.getName().equalsIgnoreCase("jre")) { javaHome = javaHome.getParentFile(); toolsJar = new File(javaHome, "lib/tools.jar"); if (toolsJar.exists()) { return toolsJar; } } if (os.isWindows()) { String version = SystemProperties.getInstance().getJavaVersion(); if (javaHome.getName().matches("jre\\d+") || javaHome.getName().equals("jre" + version)) { javaHome = new File(javaHome.getParentFile(), "jdk" + version); toolsJar = new File(javaHome, "lib/tools.jar"); if (toolsJar.exists()) { return toolsJar; } } } return null; }
public static String getUserAgentString() { String osName = System.getProperty("os.name"); String osVersion = System.getProperty("os.version"); String osArch = System.getProperty("os.arch"); String javaVendor = System.getProperty("java.vendor"); String javaVersion = SystemProperties.getInstance().getJavaVersion(); String javaVendorVersion = System.getProperty("java.vm.version"); return String.format("Gradle/%s (%s;%s;%s) (%s;%s;%s)", GradleVersion.current().getVersion(), osName, osVersion, osArch, javaVendor, javaVersion, javaVendorVersion); }
/** * Locates a stand-alone JRE installation for this JVM. Returns null if not found. */ @Nullable public Jre getStandaloneJre() { if (javaVersion.isJava9Compatible()) { return null; } if (os.isWindows()) { File jreDir; if (javaVersion.isJava5()) { jreDir = new File(javaHome.getParentFile(), "jre" + SystemProperties.getInstance().getJavaVersion()); } else { jreDir = new File(javaHome.getParentFile(), "jre" + javaVersion.getMajorVersion()); } if (jreDir.isDirectory()) { return new DefaultJre(jreDir); } } if (!new File(javaHome, "jre").isDirectory()) { return new DefaultJre(javaHome); } return null; }