Я пытаюсь найти версию OpenJDK
, установленную в системе, с помощью кода C#
.
Я попробовал следующее, оно работает для Oracle's JDK
, но не для OpenJDK
try
{
ProcessStartInfo psi = new ProcessStartInfo();
psi.FileName = "java.exe";
psi.Arguments = " -version";
psi.RedirectStandardError= true;
psi.UseShellExecute = false;
Process pr = Process.Start(psi);
string strOutput = pr.StandardError.ReadLine().Split(' ')[2].Replace("\"", "");
Console.WriteLine(strOutput);
}
catch (Exception ex)
{
Console.WriteLine("Exception is " + ex.Message);
}
, если выход java -version
равен
openjdk version "1.8.0_202"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_202-b08)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.202-b08, mixed mode)
Я хочу, чтобы вывод был 1.8.0