Apache Maven JAR Utilities 3.0.0 API
Maven Shared Components: Jar Analyzer
The Maven Jar Analyzer components can be used to gather various pieces of information about a given JAR file. Currently, the following operations are supported:
- Maven Artifact Identification - examine the JAR and its contents to try and determine any associated Maven metadata such as group and artifact ID.
- Java Class Analysis - examine ther JAR's class file contents to determine various pieces of Java metadata.
Maven Artifact Identification
To determine the Maven artifact metadata for a particular JAR, the
JarIdentificationAnalysis
class is used.
The class can be obtained through Plexus, or created standalone (in which case, see the class Javadoc for
information on proper wiring).
Note that to use the class, you must first obtain a JarAnalyzer
instance as
instructed in its Javadoc.
The resulting information will be populated in the returned
JarIdentification
class.
Example usage:
JarAnalyzer jar = new JarAnalyzer( jarFile ); JarIdenfitication jarIdenfitication; try { // instance must have been previously obtained through Plexus or created as instructed in its Javadoc jarIdenfitication = jarIdenfiticationAnalyzer.analyze( jar ); } finally { jar.closeQuietly(); } // continue to use jarIdenfitication or jar.getJarData()
Java Class Analysis
To determine the Java class metadata for a particular JAR, the
JarClassesAnalysis
class is used.
The class can be obtained through Plexus, or created standalone (in which case, see the class Javadoc for
information on proper wiring).
Note that to use the class, you must first obtain a JarAnalyzer
instance as
instructed in its Javadoc.
The resulting information will be populated in the returned
JarClasses
class.
Example usage:
JarAnalyzer jar = new JarAnalyzer( jarFile ); JarClasses jarClasses; try { // instance must have been previously obtained through Plexus or created as instructed in its Javadoc jarClasses = jarClassAnalyzer.analyze( jar ); } finally { jar.closeQuietly(); } // continue to use jarClasses or jar.getJarData()