Class<?> thirdPartyClass = org.apache.log4j.Logger.class; if (thirdPartyClass.getPackage().isCompatibleWith("2.0")) { // Do stuff specific to Log4j 2 }
if (System.class.getPackage().isCompatibleWith("1.6")) { System.out.println("Running in Java 1.6 or later."); }
private static boolean isCompatible(String extensionClassName, String requiredSpecificationVersion) { boolean compatible; try { Class<?> extensionClass = Class.forName(extensionClassName); Package extensionPackage = extensionClass.getPackage(); String specificationVersion = extensionPackage.getSpecificationVersion(); compatible = specificationVersion != null && extensionPackage.isCompatibleWith(requiredSpecificationVersion); } catch (ClassNotFoundException expected) { compatible = true; // Passes the check since it's not on classpath } return compatible; } }
private static boolean isCompatible(String extensionClassName, String requiredSpecificationVersion) { boolean compatible; try { Class<?> extensionClass = Class.forName(extensionClassName); Package extensionPackage = extensionClass.getPackage(); String specificationVersion = extensionPackage.getSpecificationVersion(); compatible = specificationVersion != null && extensionPackage.isCompatibleWith(requiredSpecificationVersion); } catch (ClassNotFoundException expected) { compatible = true; // Passes the check since it's not on classpath } return compatible; } }
public class Redirector extends Applet { @Override public void start() { String newURL; Package pkg = Object.class.getPackage(); if (pkg.isCompatibleWith("1.7")) { newURL = "java17.html"; } else if (pkg.isCompatibleWith("1.6")) { newURL = "java16.html"; } else if (pkg.isCompatibleWith("1.5")) { newURL = "java15.html"; } else if (pkg.isCompatibleWith("1.4")) { newURL = "java14.html"; } else { newURL = "java13.html"; } try { getAppletContext().showDocument(new URL(newURL)); } catch (MalformedURLException e) { showStatus(e.toString()); } } }
name, version, manifestName)); else if (! pkg.isCompatibleWith(version)) { log.warning(L.l("installed {0} is not compatible with version `{1}'. {2} requires version {1}.", name, version, manifestName));
name, version, manifestName)); else if (! pkg.isCompatibleWith(version)) { log.warning(L.l("installed {0} is not compatible with version `{1}'. {2} requires version {1}.", name, version, manifestName));
formatOk = specMatches && javaLangPackage.isCompatibleWith(version); } else if (STD_COMPAT_BINDING.equals(key) && STD_COMPAT_BINDING_VALUE.equals(val)) { bindingOk = true;