Search code examples
javamavenmaven-dependency

How to find the minimum JDK version of a specific version of maven dependency?


Now I use the JDK1.5 to develop the program, so I have to guarantee the maven dependencies I want to use are compatible with the JDK 1.5 . Sometimes, latest version needs jdk higher than 1.5 but older version may fit. But how to find the minimum JDK version of a specific version of maven dependency? I have tried mvnrepository.com but can not find the jdk requirement. Some project home page only show the jdk requirement of latest version. Anyone can help me? Thank you!


Solution

  • You can check the major/minor version of the class files. If the JAR was built with Maven you can check the version of the JDK used to build it in the META-INF/MANIFEST.MF file which is most likely the minimum version.

    A way to check without downloading the JAR is to check the POM on maven central e.g.

    http://search.maven.org/#artifactdetails%7Cnet.openhft%7Cchronicle-queue%7C4.5.15%7Cbundle

    needs 1.8

           <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <compilerArgument>-Xlint:deprecation</compilerArgument>
                    <compilerArgument>-XDignore.symbol.file</compilerArgument>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
    

    Something to consider, if Oracle with all it's resources doesn't support Java 7 for free, should you?