+ public static Version parse(String versionString) {
+ String[] componentStrings = versionString.split("\\.");
+ int[] components = new int[componentStrings.length];
+ int index = -1;
+ for (String componentString : componentStrings) {
+ try {
+ components[++index] = Integer.parseInt(componentString);
+ } catch (NumberFormatException nfe1) {
+ return null;
+ }
+ }
+ return new Version(components);