Sat, 29 Nov 2025 18:11:18 +0100
improve 64 libdir detection on solaris
package de.unixwork.uwproj; public class CompatibilityCheck { private CompatibilityCheck() {} private static int[] versionParts(String ver) { if (ver.isBlank()) return new int[]{0,0,0}; final var partStrings = ver.split("\\."); try { return new int[]{ partStrings.length > 0 ? Integer.parseInt(partStrings[0]) : 0, partStrings.length > 1 ? Integer.parseInt(partStrings[1]) : 0, partStrings.length > 2 ? Integer.parseInt(partStrings[2]) : 0 }; } catch (NumberFormatException e) { return new int[]{0,0,0}; } } public static void check(String expected, String actual) throws CompatibilityException { final var expectedVer = versionParts(expected); final var actualVer = versionParts(actual); if (expectedVer[0] != actualVer[0] || expectedVer[1] > actualVer[1]) { if (actual.isBlank()) actual = "unspecified"; throw new CompatibilityException("Expected project file version '" + expected + "' but got '" + actual + "'."); } } public static class CompatibilityException extends Exception { public CompatibilityException(String message) { super(message); } } }