Package com.fasterxml.jackson.core.util
Class VersionUtil
java.lang.Object
com.fasterxml.jackson.core.util.VersionUtil
Functionality for supporting exposing of component
Version
s.
Also contains other misc methods that have no other place to live in.
Note that this class can be used in two roles: first, as a static utility class for loading purposes, and second, as a singleton loader of per-module version information.
Note that method for accessing version information changed between versions 2.1 and 2.2; earlier code used file named "VERSION.txt"; but this has serious performance issues on some platforms (Android), so a replacement system was implemented to use class generation and dynamic class loading.
Note that functionality for reading "VERSION.txt" was removed completely from Jackson 2.6.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic Version
mavenVersionFor
(ClassLoader cl, String groupId, String artifactId) Deprecated.Since 2.6: functionality not used by any official Jackson component, should be moved out if anyone needs itstatic Version
packageVersionFor
(Class<?> cls) Deprecated.Since 2.12 simply useversionFor(Class)
insteadstatic Version
parseVersion
(String s, String groupId, String artifactId) Method used byPackageVersion
classes to decode version injected by Maven build.protected static int
static final void
static final <T> T
version()
Deprecated.static Version
versionFor
(Class<?> cls) Loads version information by introspecting a class named "PackageVersion" in the same package as the given class.
-
Constructor Details
-
VersionUtil
protected VersionUtil()
-
-
Method Details
-
version
Deprecated. -
versionFor
Loads version information by introspecting a class named "PackageVersion" in the same package as the given class.If the class could not be found or does not have a public static Version field named "VERSION", returns "empty"
Version
returned byVersion.unknownVersion()
.- Parameters:
cls
- Class for which to look version information- Returns:
- Version information discovered if any;
Version.unknownVersion()
if none
-
packageVersionFor
Deprecated.Since 2.12 simply useversionFor(Class)
insteadAlias ofversionFor(Class)
.- Parameters:
cls
- Class for which to look version information- Returns:
- Version information discovered if any;
Version.unknownVersion()
if none
-
mavenVersionFor
@Deprecated public static Version mavenVersionFor(ClassLoader cl, String groupId, String artifactId) Deprecated.Since 2.6: functionality not used by any official Jackson component, should be moved out if anyone needs itWill attempt to load the maven version for the given groupId and artifactId. Maven puts a pom.properties file in META-INF/maven/groupId/artifactId, containing the groupId, artifactId and version of the library.- Parameters:
cl
- the ClassLoader to load the pom.properties file fromgroupId
- the groupId of the libraryartifactId
- the artifactId of the library- Returns:
- The version
-
parseVersion
Method used byPackageVersion
classes to decode version injected by Maven build.- Parameters:
s
- Version String to parsegroupId
- Maven group id to include with versionartifactId
- Maven artifact id to include with version- Returns:
- Version instance constructed from parsed components, if successful;
Version.unknownVersion()
if parsing of components fail
-
parseVersionPart
-
throwInternal
public static final void throwInternal() -
throwInternalReturnAny
public static final <T> T throwInternalReturnAny()
-