mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[java] ignores parasitic messages on parsing "java -version" output (IDEA-199406)
This commit is contained in:
@@ -92,11 +92,15 @@ public class JdkVersionDetectorImpl extends JdkVersionDetector {
|
||||
process.destroy();
|
||||
}
|
||||
|
||||
if (!reader.myLines.isEmpty()) {
|
||||
JavaVersion base = JavaVersion.parse(reader.myLines.get(0));
|
||||
JavaVersion rt = JavaVersion.tryParse(reader.myLines.size() > 2 ? reader.myLines.get(1) : null);
|
||||
List<String> lines = reader.myLines;
|
||||
while (!lines.isEmpty() && (lines.get(0).startsWith("Picked up _JAVA_OPTIONS:") || lines.get(0).startsWith("Picked up JAVA_TOOL_OPTIONS:"))) {
|
||||
lines.remove(0);
|
||||
}
|
||||
if (!lines.isEmpty()) {
|
||||
JavaVersion base = JavaVersion.parse(lines.get(0));
|
||||
JavaVersion rt = JavaVersion.tryParse(lines.size() > 2 ? lines.get(1) : null);
|
||||
JavaVersion version = rt != null && rt.feature == base.feature && rt.minor == base.minor ? rt : base;
|
||||
boolean x64 = reader.myLines.stream().anyMatch(s -> s.contains("64-Bit") || s.contains("x86_64") || s.contains("amd64"));
|
||||
boolean x64 = lines.stream().anyMatch(s -> s.contains("64-Bit") || s.contains("x86_64") || s.contains("amd64"));
|
||||
return new JdkVersionInfo(version, x64 ? Bitness.x64 : Bitness.x32);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user