Reputation: 2098
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!
Upvotes: 17
Views: 8673
Reputation: 460
It seems that the only one hundred percent solution is to check minimum required JDK version for .class
files inside jar
. Check this question.
Upvotes: 0
Reputation: 2191
Most of the times you can do like this
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>{java.sourceversion}</source>
<target>{java.targetversion}</target>
</configuration>
</plugin>
</plugins>
</build>
this should be enough.
Upvotes: 0
Reputation: 533530
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?
Upvotes: 7