X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=utils%2FgetJavaVersion.java;h=8e094236748c109ab4233efcf55f35ebd765fce0;hb=9276cd700c1157d058538fc4e4676c3dce16deaa;hp=6bec144b3f8bf95cb5f749af4af36538cb3ba40a;hpb=865a855a4ca87eadb3e5ff284ed32ed307d9c34b;p=jalview.git diff --git a/utils/getJavaVersion.java b/utils/getJavaVersion.java index 6bec144..8e09423 100644 --- a/utils/getJavaVersion.java +++ b/utils/getJavaVersion.java @@ -1,50 +1,59 @@ /* - * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.0b1) - * Copyright (C) 2014 The Jalview Authors + * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$) + * Copyright (C) $$Year-Rel$$ The Jalview Authors * * This file is part of Jalview. * * Jalview is free software: you can redistribute it and/or * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. * * Jalview is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty * of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU General Public License for more details. * - * You should have received a copy of the GNU General Public License along with Jalview. If not, see . + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . * The Jalview Authors are detailed in the 'AUTHORS' file. */ -import java.io.*; -import java.util.*; +import java.io.DataInputStream; +import java.io.FileInputStream; +import java.io.IOException; +import java.util.Enumeration; +import java.util.Hashtable; import java.util.jar.JarEntry; import java.util.jar.JarInputStream; public class getJavaVersion { -/** - * Takes a set of Jars and/or class files as arguments. Reports the java version for the classes - */ + /** + * Takes a set of Jars and/or class files as arguments. Reports the java + * version for the classes + */ public static void main(String[] args) throws IOException { - Hashtable observed=new Hashtable(); + Hashtable observed = new Hashtable(); for (int i = 0; i < args.length; i++) - { - checkClassVersion(args[i], observed); - } + { + checkClassVersion(args[i], observed); + } printVersions(observed, System.out); } - public static void printVersions(Hashtable observed, java.io.PrintStream outs) + + public static void printVersions(Hashtable observed, + java.io.PrintStream outs) { - if (observed.size()>0) + if (observed.size() > 0) { - int space=0; - String key=null; - for (Enumeration keys = observed.keys(); keys.hasMoreElements(); ) { + int space = 0; + String key = null; + for (Enumeration keys = observed.keys(); keys.hasMoreElements();) + { key = (String) keys.nextElement(); - if (space++>0) + if (space++ > 0) { outs.print(" "); } @@ -60,13 +69,13 @@ public class getJavaVersion String version = checkClassVersion(filename); if (version == null) { -// System.err.println("Reading "+filename+" as jar:"); + // System.err.println("Reading "+filename+" as jar:"); try { JarInputStream jis = new JarInputStream(new FileInputStream( filename)); JarEntry entry; - Hashtable perjar=new Hashtable(); + Hashtable perjar = new Hashtable(); while ((entry = jis.getNextJarEntry()) != null) { if (entry != null) @@ -88,8 +97,8 @@ public class getJavaVersion } } } - System.err.println("Jar : "+filename); - printVersions(perjar,System.err); + System.err.println("Jar : " + filename); + printVersions(perjar, System.err); } catch (Exception e) { @@ -105,12 +114,11 @@ public class getJavaVersion { if (version != null) { -// System.err.println("Version is '"+version+"'"); + // System.err.println("Version is '"+version+"'"); int[] vrs = (int[]) observed.get(version); if (vrs == null) { - vrs = new int[] - { 0 }; + vrs = new int[] { 0 }; } vrs[0]++; observed.put(version, vrs); @@ -131,22 +139,31 @@ public class getJavaVersion if (versions == null) { versions = new Hashtable(); - versions.put("45.3", "1.0"); + versions.put("45.3", "1.0.2"); versions.put("45.3", "1.1"); versions.put("46.0", "1.2"); versions.put("47.0", "1.3"); versions.put("48.0", "1.4"); versions.put("49.0", "1.5"); versions.put("50.0", "1.6"); + versions.put("51.0", "1.7"); + versions.put("52.0", "1.8"); + versions.put("53.0", "9"); + versions.put("54.0", "10"); + versions.put("55.0", "11"); + } - String version = (String) versions.get(major + "." - + minor); + String version = (String) versions.get(major + "." + minor); if (version == null) { // get nearest known version version = (String) versions.get(major + ".0"); } -// System.err.println("Version "+version); + // System.err.println("Version "+version); + if (version == null) + { + versions.put(major + "." + minor, "Class v" + major + ".0"); + } return version; } @@ -159,7 +176,7 @@ public class getJavaVersion } int minor = in.readUnsignedShort(); int major = in.readUnsignedShort(); -// System.err.println("Version "+major+"."+minor); + // System.err.println("Version "+major+"."+minor); return parseVersions(minor, major); }