Skip to content
This repository was archived by the owner on Jul 13, 2026. It is now read-only.

Commit d92fc3e

Browse files
authored
[Xamarin.Android.Tools.AndroidSdk] Probe for AdoptOpenJDK Locations (#115)
Context: https://adoptopenjdk.net Add support to probe for the [AdoptOpenJDK][0] installation directories. [0]: https://adoptopenjdk.net/?variant=openjdk8&jvmVariant=hotspot
1 parent dca30d9 commit d92fc3e

2 files changed

Lines changed: 21 additions & 0 deletions

File tree

‎src/Xamarin.Android.Tools.AndroidSdk/JdkInfo.cs‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -288,6 +288,7 @@ public static IEnumerable<JdkInfo> GetKnownSystemJdkInfos (Action<TraceLevel, st
288288
.Concat(JdkLocations.GetPreferredJdks(logger))
289289
.Concat(XAPrepareJdkLocations.GetXAPrepareJdks(logger))
290290
.Concat(MicrosoftOpenJdkLocations.GetMicrosoftOpenJdks(logger))
291+
.Concat(AdoptOpenJdkLocations.GetAdoptOpenJdks(logger))
291292
.Concat(AzulJdkLocations.GetAzulJdks(logger))
292293
.Concat(OracleJdkLocations.GetOracleJdks(logger))
293294
.Concat(VSAndroidJdkLocations.GetVSAndroidJdks(logger))
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
usingSystem;
2+
usingSystem.Collections.Generic;
3+
usingSystem.Diagnostics;
4+
usingSystem.IO;
5+
usingSystem.Linq;
6+
usingSystem.Text;
7+
8+
namespaceXamarin.Android.Tools{
9+
10+
classAdoptOpenJdkLocations:JdkLocations{
11+
12+
internalstaticIEnumerable<JdkInfo>GetAdoptOpenJdks(Action<TraceLevel,string>logger)
13+
{
14+
returnGetMacOSSystemJdks("adoptopenjdk-*.jdk",logger)
15+
.Concat(GetWindowsFileSystemJdks(Path.Combine("AdoptOpenJDK","jdk-*"),logger))
16+
.Concat(GetWindowsRegistryJdks(logger,@"SOFTWARE\AdoptOpenJDK\JDK","*",@"hotspot\MSI","Path"))
17+
.OrderByDescending(jdk =>jdk,JdkInfoVersionComparer.Default);
18+
}
19+
}
20+
}

0 commit comments

Comments
 (0)