Add WindowsDiscoverConfig to find JDK (#25368) (#25398)

This commit is contained in:
Richard Imaoka 2018-07-30 23:50:22 +09:00 committed by Konrad `ktoso` Malawski
parent 90c1f2f79b
commit e28535d4cc

View file

@ -117,6 +117,17 @@ object CrossJava {
}
}
class WindowsDiscoverConfig extends JavaDiscoverConf {
val base: File = file("C://Program Files/Java")
val JavaHomeDir = """jdk-?(1\.)?([0-9]+).*""".r
def javaHomes: Vector[(String, File)] =
wrapNull(base.list())
.collect {
case dir@JavaHomeDir(m, n) => JavaVersion(nullBlank(m) + n).toString -> (base / dir)
}
}
// See https://github.com/shyiko/jabba
class JabbaDiscoverConfig extends JavaDiscoverConf {
val base: File = Path.userHome / ".jabba" / "jdk"
@ -137,6 +148,7 @@ object CrossJava {
new LinuxDiscoverConfig(file("/usr") / "java"),
new LinuxDiscoverConfig(file("/usr") / "lib" / "jvm"),
new MacOsDiscoverConfig,
new WindowsDiscoverConfig
)
}