February 25, 2020

Discovering the Magic Version Number of .class Files

Abstract

What version of Java was used to create your .class files? For your own projects, this is easy to figure out because you choose your Java version when you compile. For the hundreds or thousands of dependencies in your project, this question is not so easy to answer. Inside every .class file is a magic number with a byte value indicating the Java version used to create the .class file. This blog describes some code in ferris-magic-number which analyzes and reports the Java versions on a directory full of .class files.

Disclaimer

This post is solely informative. Critically think before using any information presented. Learn from it but ultimately make your own decisions at your own risk.

Requirements

I did all of the work for this post using the following major technologies. You may be able to do the same thing with different technologies or versions, but no guarantees.

  • NetBeans 11.2
  • Maven 3.3.9 (Bundled with NetBeans)
  • Java 11 (zulu11.35.15-ca-jdk11.0.5-win_x64)

Download

Visit my GitHub page https://github.com/mjremijan to see all of my open source projects. The code for this post is located at: https://github.com/mjremijan/ferris-magic-number

Let’s get to it

ferris-magic-number searches an entire directory tree for files that end with .class. It will analyze the Magic Number version number byte value of all the classes and print out a detailed and summary report (System.out.printf()…nothing too complicated).

YOU need to tell it the directory to search.

YOU need to unzip your JAR files.

NOTE See my ferris-war-exploder project to easily explode a WAR file along with every JAR file within the WAR file.

Listing 1 shows the main() method to start the application. Update the path appropriately.

Listing 1 - The main() method

package org.ferris.magic.number;

import java.nio.file.Paths;

public static void main(String[] args) throws Exception
{
   System.out.printf(
     "=== Welcome to Ferris Magic Number ===%n"
   );

   MagicNumbers.load(
    Paths.get("./src/test/jars")
  ).print();

  System.out.printf("%n=== DONE ===%n");
}

Listing 2 shows the MagicNumber class. This class contains the interesting code parsing the .class file and reading the major version byte value. Nothing in Listing 2 is difficult to understand, so I’ll leave it up to you to read through.

Listing 2 - The MagicNumber method

package org.ferris.magic.number;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.nio.file.Path;
import java.util.Arrays;

public class MagicNumber {

  protected Path classFile;
  protected byte[] CAFEBABEs, minors, majors;
  protected Major major;

  public MagicNumber (Path classFile) throws IOException {
    try (
      InputStream is = new FileInputStream(classFile.toFile());
    ) {
      this.classFile = classFile;

      // Magic number info:
      // https://en.wikipedia.org/wiki/Java_class_file#Magic_Number
      CAFEBABEs = new byte[4];
      is.read(CAFEBABEs);

      minors = new byte[2];
      is.read(minors);

      majors = new byte[2];
      is.read(majors);

      major = new Major(majors[1]);
    }
  }

  @Override
  public String toString() {
    StringBuilder sp = new StringBuilder();
    sp.append(String.format(
      "  CLASS: %s%n", classFile.toString()));
    sp.append(String.format(
      "    minor[] = %s%n", Arrays.toString(minors)));
    sp.append(String.format(
      "    major[] = %s%n", Arrays.toString(majors)));
    sp.append(String.format(
      "    major = %s%n", major.toString()));
    return sp.toString();
  }

  public Major getMajor() {
    return major;
  }
}

Example Output

What does the output look like? See Listing 4. That’s the entire output and you’ll need to scroll a little bit :) The output in Listing 4 is the from the example .class files that come with the project. So if you clone the repository and execute as-is, you’ll get this output of Listing 4.

What may be more useful is Listing 3, which shows just the summary output (scroll all the way to the bottom of Listing 4 to see the summary). Listing 3 shows how ferris-magic-number shows a breakdown of how many different Java versions were found and how many .class files for each version.

Listing 3 - Summary Output

=== SUMMARY ===

    Different major version count: 2
    'JDK 1.3 = 47' class count: 118
    'JDK 1.1 = 45' class count: 333

=== DONE ===

Listing 4 - Full Output

=== Welcome to Ferris Magic Number ===


=== 47 ===

    Count: 118

    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\BasicDynaBean.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\BasicDynaClass.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\BeanAccessLanguageException.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\BeanUtils.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\BeanUtilsBean$1.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\BeanUtilsBean.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\BeanUtilsBean2.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\ConstructorUtils.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\ContextClassLoaderLocal.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\ConversionException.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\Converter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\AbstractArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\AbstractConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\ArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\BigDecimalConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\BigIntegerConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\BooleanArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\BooleanConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\ByteArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\ByteConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\CalendarConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\CharacterArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\CharacterConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\ClassConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\ConverterFacade.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\DateConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\DateTimeConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\DoubleArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\DoubleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\FileConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\FloatArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\FloatConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\IntegerArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\IntegerConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\LongArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\LongConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\NumberConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\ShortArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\ShortConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\SqlDateConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\SqlTimeConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\SqlTimestampConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\StringArrayConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\StringConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\converters\URLConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\ConvertingWrapDynaBean.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\ConvertUtils.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\ConvertUtilsBean.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\ConvertUtilsBean2.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\DynaBean.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\DynaBeanMapDecorator$MapEntry.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\DynaBeanMapDecorator.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\DynaClass.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\DynaProperty.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\expression\DefaultResolver.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\expression\Resolver.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\JDBCDynaClass.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\LazyDynaBean.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\LazyDynaClass.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\LazyDynaList.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\LazyDynaMap.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\BaseLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\BigDecimalLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\BigIntegerLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\ByteLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\DateLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\DecimalLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\DoubleLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\FloatLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\IntegerLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\LongLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\ShortLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\SqlDateLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\SqlTimeLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\SqlTimestampLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\converters\StringLocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\LocaleBeanUtils$Descriptor.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\LocaleBeanUtils.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\LocaleBeanUtilsBean$1.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\LocaleBeanUtilsBean$Descriptor.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\LocaleBeanUtilsBean.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\LocaleConverter.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\LocaleConvertUtils.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\LocaleConvertUtilsBean$1.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\LocaleConvertUtilsBean$DelegateFastHashMap.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\locale\LocaleConvertUtilsBean.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\MappedPropertyDescriptor$MappedMethodReference.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\MappedPropertyDescriptor.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\MethodUtils$MethodDescriptor.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\MethodUtils.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\MutableDynaClass.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\NestedNullException.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\PropertyUtils.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\PropertyUtilsBean.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\ResultSetDynaClass.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\ResultSetIterator.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\RowSetDynaClass.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WeakFastHashMap$1.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WeakFastHashMap$CollectionView$CollectionViewIterator.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WeakFastHashMap$CollectionView.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WeakFastHashMap$EntrySet.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WeakFastHashMap$KeySet.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WeakFastHashMap$Values.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WeakFastHashMap.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WrapDynaBean.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WrapDynaClass$1.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WrapDynaClass$2.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\beanutils\WrapDynaClass.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\collections\ArrayStack.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\collections\Buffer.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\collections\BufferUnderflowException.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\collections\FastHashMap$1.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\collections\FastHashMap$CollectionView$CollectionViewIterator.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\collections\FastHashMap$CollectionView.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\collections\FastHashMap$EntrySet.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\collections\FastHashMap$KeySet.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\collections\FastHashMap$Values.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'
    CLASS: .\src\test\jars\commons-beanutils-core-1.8.3\org\apache\commons\collections\FastHashMap.class
        minor[] = [0, 0]
        major[] = [0, 47]
        major = 'JDK 1.3 = 47'


=== 45 ===

    Count: 333

    CLASS: .\src\test\jars\dom4j-1.1\com\werken\saxpath\DefaultXPathHandler$Singleton.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\com\werken\saxpath\DefaultXPathHandler.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\com\werken\saxpath\Token.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\com\werken\saxpath\TokenTypes.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\com\werken\saxpath\XPathLexer.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\com\werken\saxpath\XPathReader.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\Attribute.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\bean\BeanAttribute.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\bean\BeanAttributeList.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\bean\BeanDocumentFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\bean\BeanElement.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\bean\BeanMetaData.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\Branch.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\CDATA.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\CharacterData.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\Comment.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\datatype\DatatypeAttribute.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\datatype\DatatypeDocumentFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\datatype\DatatypeElement.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\datatype\DatatypeElementFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\datatype\InvalidSchemaException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\datatype\NamedTypeResolver.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\datatype\SchemaParser.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\Document.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\DocumentException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\DocumentFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\DocumentHelper.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\DocumentType.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMAttribute.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMAttributeNodeMap.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMCDATA.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMComment.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMDocument.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMDocumentFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMDocumentType.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMElement.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMEntityReference.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMNamespace.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMNodeHelper$1.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMNodeHelper$EmptyNodeList.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMNodeHelper.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMProcessingInstruction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dom\DOMText.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dtd\AttributeDecl.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dtd\ElementDecl.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dtd\ExternalEntityDecl.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\dtd\InternalEntityDecl.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\Element.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\ElementHandler.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\ElementPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\Entity.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\IllegalAddException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\InvalidXPathException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\aelfred\DefaultHandler.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\aelfred\SAXDriver$Adapter.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\aelfred\SAXDriver.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\aelfred\XmlParser.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\DispatchHandler.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\DocumentInputSource$1.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\DocumentInputSource.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\DocumentResult.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\DocumentSource.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\DOMReader.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\DOMWriter.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\ElementStack.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\HTMLWriter.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\JAXPHelper.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\OutputFormat.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\PruningElementStack.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\SAXContentHandler.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\SAXHelper.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\SAXReader$SAXEntityResolver.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\SAXReader.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\SAXValidator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\SAXWriter.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\XMLResult.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\XMLWriter.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\io\XPPReader.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\Namespace.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\Node.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\NodeFilter.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\ProcessingInstruction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\QName.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\Action.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\Mode.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\NullAction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\pattern\DefaultPattern.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\pattern\NodeTypePattern.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\Pattern.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\Rule.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\RuleManager$1.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\RuleManager.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\RuleSet.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\rule\Stylesheet.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\swing\BranchTreeNode$1.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\swing\BranchTreeNode.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\swing\DocumentTreeModel.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\swing\LeafTreeNode$1.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\swing\LeafTreeNode.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\swing\XMLTableColumnDefinition.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\swing\XMLTableDefinition.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\swing\XMLTableModel.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\Text.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractAttribute.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractBranch.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractCDATA.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractCharacterData.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractComment.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractDocument.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractDocumentType.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractElement.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractEntity.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractNode.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractProcessingInstruction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\AbstractText.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\BackedList.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\BaseElement.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\ContentListFacade.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\DefaultAttribute.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\DefaultCDATA.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\DefaultComment.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\DefaultDocument.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\DefaultDocumentType.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\DefaultElement.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\DefaultEntity.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\DefaultNamespace.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\DefaultProcessingInstruction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\DefaultText.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\ElementIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\ElementNameIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\ElementQNameIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\FilterIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\FlyweightAttribute.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\FlyweightCDATA.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\FlyweightComment.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\FlyweightEntity.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\FlyweightProcessingInstruction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\FlyweightText.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\NamespaceCache.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\NamespaceStack.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\QNameCache.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\tree\SingleIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\AttributeHelper.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\IndexedDocumentFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\IndexedElement.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\NodeComparator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\NonLazyDocumentFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\NonLazyElement.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\ProxyDocumentFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\UserDataAttribute.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\UserDataDocumentFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\UserDataElement.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\util\XMLErrorHandler.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\Visitor.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\VisitorSupport.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\xpath\DefaultNamespaceContext.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\xpath\DefaultXPath$1.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\xpath\DefaultXPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\xpath\XPathPattern.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\XPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\XPathException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\dom4j\xpp\ProxyXmlStartTag.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\BaseXPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\Context.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\ContextSupport.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\DefaultNavigator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\dom4j\DocumentNavigator$Singleton.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\dom4j\DocumentNavigator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\dom4j\XPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\BinaryExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultAbsoluteLocationPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultAdditiveExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultAllNodeStep.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultAndExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultArithExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultBinaryExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultCommentNodeStep.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultDivExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultEqualityExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultEqualsExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultFilterExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultFunctionCallExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultGreaterThanEqualExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultGreaterThanExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultLessThanEqualExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultLessThanExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultLiteralExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultLocationPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultLogicalExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultMinusExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultModExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultMultiplicativeExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultMultiplyExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultNameStep.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultNotEqualsExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultNumberExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultOrExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultPathExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultPlusExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultPredicate.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultPredicated.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultProcessingInstructionNodeStep.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultRelationalExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultRelativeLocationPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultStep.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultTextNodeStep.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultTruthExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultUnaryExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultUnionExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultVariableReferenceExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultXPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\DefaultXPathFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\Expr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\FilterExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\FunctionCallExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableAncestorAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableAncestorOrSelfAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableAttributeAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableChildAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableDescendantAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableDescendantOrSelfAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableFollowingAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableFollowingSiblingAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableNamespaceAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableParentAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterablePrecedingAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterablePrecedingSiblingAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\iter\IterableSelfAxis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\LiteralExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\LocationPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\NumberExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\PathExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\Predicate.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\Predicated.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\PredicateSet.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\Step.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\UnaryExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\UnionExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\VariableReferenceExpr.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\XPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\expr\XPathFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\BooleanFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\CeilingFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\ConcatFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\ContainsFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\CountFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\DocumentFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\ext\EvaluateFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\ext\MatrixConcatFunction$MatrixEnum.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\ext\MatrixConcatFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\FalseFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\FloorFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\IdFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\LastFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\LocalNameFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\NameFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\NamespaceUriFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\NormalizeSpaceFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\NotFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\NumberFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\PositionFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\RoundFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\StartsWithFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\StringFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\StringLengthFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\SubstringAfterFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\SubstringBeforeFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\SubstringFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\SumFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\function\TrueFunction.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\Function.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\FunctionCallException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\FunctionContext.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\JaxenException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\JaxenHandler.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\JaXPath.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\NamespaceContext.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\Navigator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\AnyChildNodeTest.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\AnyNodeTest.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\LocationPathPattern.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\NamespaceTest.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\NameTest.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\NodeTest.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\NodeTypeTest.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\NoNodeTest.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\Pattern.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\PatternHandler.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\PatternParser.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\TextNodeTest.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\pattern\UnionPattern.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\QualifiedName.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\SimpleFunctionContext.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\SimpleNamespaceContext.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\SimpleVariableContext.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\UnresolvableException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\UnsupportedAxisException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\AncestorAxisIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\AncestorOrSelfAxisIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\DescendantAxisIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\DescendantOrSelfAxisIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\FollowingAxisIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\FollowingSiblingAxisIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\IdentityHashMap$1.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\IdentityHashMap$2.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\IdentityHashMap$3.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\IdentityHashMap$EmptyHashIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\IdentityHashMap$Entry.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\IdentityHashMap$HashIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\IdentityHashMap.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\LinkedIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\PrecedingAxisIterator$ReverseDescendantOrSelfAxisIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\PrecedingAxisIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\PrecedingSiblingAxisIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\SelfAxisIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\SingleObjectIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\util\StackedIterator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\VariableContext.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\XPathFunctionContext$Singleton.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\XPathFunctionContext.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\jaxen\XPathSyntaxException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\saxpath\Axis.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\saxpath\conformance\ConformanceXPathHandler.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\saxpath\helpers\XPathReaderFactory.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\saxpath\Operator.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\saxpath\SAXPathEventSource.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\saxpath\SAXPathException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\saxpath\SAXPathParseException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\saxpath\XPathHandler.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\saxpath\XPathReader.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'
    CLASS: .\src\test\jars\dom4j-1.1\org\saxpath\XPathSyntaxException.class
        minor[] = [0, 3]
        major[] = [0, 45]
        major = 'JDK 1.1 = 45'


=== SUMMARY ===

    Different major version count: 2
    'JDK 1.3 = 47' class count: 118
    'JDK 1.1 = 45' class count: 333

=== DONE ===

Summary

The ferris-magic-number project isn’t too complicated. It produces some interesting information, but, if you are having a problem with a dependency having a newer Java version than you support, this is when it really can be useful. That exact problem is what I needed to solve. Enjoy!

References

Java class file. (n.d.). Wikipedia. Retrieved from https://en.wikipedia.org/wiki/Java_class_file#Magic_Number.

No comments:

Post a Comment