Package io.microsphere.util.jar
Class JarUtils
- java.lang.Object
-
- io.microsphere.util.jar.JarUtils
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringMANIFEST_RESOURCE_PATHThe resource path of Manifest file in JAR archive.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description protected static voidassertJarURLProtocol(java.net.URL jarURL)protected static voiddoExtract(java.util.jar.JarFile jarFile, java.lang.Iterable<java.util.jar.JarEntry> jarEntries, java.io.File targetDirectory)protected static java.util.List<java.util.jar.JarEntry>doFilter(java.lang.Iterable<java.util.jar.JarEntry> jarEntries, JarEntryFilter jarEntryFilter)static voidextract(java.io.File jarSourceFile, java.io.File targetDirectory)Extract the sourceJarFileto target directorystatic voidextract(java.io.File jarSourceFile, java.io.File targetDirectory, JarEntryFilter jarEntryFilter)Extract the sourceJarFileto target directory with specifiedJarEntryFilterstatic voidextract(java.net.URL jarResourceURL, java.io.File targetDirectory, JarEntryFilter jarEntryFilter)Extract the sourceJarFileto target directory with specifiedJarEntryFilterstatic voidextract(java.util.jar.JarFile jarFile, java.io.File targetDirectory, JarEntryFilter jarEntryFilter)Extract the sourceJarFileto target directory with specifiedJarEntryFilterstatic java.util.List<java.util.jar.JarEntry>filter(java.util.jar.JarFile jarFile, JarEntryFilter jarEntryFilter)FilterJarEntrylist fromJarFilestatic java.util.jar.JarEntryfindJarEntry(java.net.URL jarURL)FindJarEntryfrom specifiedurlstatic java.lang.StringresolveJarAbsolutePath(java.net.URL jarURL)Resolve absolute path from theURLofJarEntrystatic java.lang.StringresolveRelativePath(java.net.URL jarURL)Resolve Relative path from Jar URLstatic java.util.jar.JarFiletoJarFile(java.net.URL jarURL)Create aJarFilefrom specifiedURLofJarFile
-
-
-
Field Detail
-
MANIFEST_RESOURCE_PATH
public static final java.lang.String MANIFEST_RESOURCE_PATH
The resource path of Manifest file in JAR archive. Typically located underMETA-INF/MANIFEST.MFin standard Java archives.- See Also:
- Constant Field Values
-
-
Method Detail
-
toJarFile
public static java.util.jar.JarFile toJarFile(java.net.URL jarURL) throws java.io.IOExceptionCreate aJarFilefrom specifiedURLofJarFile- Parameters:
jarURL-URLofJarFileorJarEntry- Returns:
- JarFile
- Throws:
java.io.IOException- Ifjar fileis invalid, seeJarFile(String)
-
assertJarURLProtocol
protected static void assertJarURLProtocol(java.net.URL jarURL) throws java.lang.NullPointerException, java.lang.IllegalArgumentException
-
resolveRelativePath
@Nonnull public static java.lang.String resolveRelativePath(java.net.URL jarURL) throws java.lang.NullPointerException, java.lang.IllegalArgumentException
Resolve Relative path from Jar URL- Parameters:
jarURL-URLofJarFileorJarEntry- Returns:
- Non-null
- Throws:
java.lang.NullPointerException- seeassertJarURLProtocol(URL)java.lang.IllegalArgumentException- seeassertJarURLProtocol(URL)
-
resolveJarAbsolutePath
@Nonnull public static java.lang.String resolveJarAbsolutePath(java.net.URL jarURL) throws java.lang.NullPointerException, java.lang.IllegalArgumentException
Resolve absolute path from theURLofJarEntry- Parameters:
jarURL-URLofJarFileorJarEntry- Returns:
- If
URL.getProtocol()equalsjarorfile, resolves absolute path, or returnnull - Throws:
java.lang.NullPointerException- seeassertJarURLProtocol(URL)java.lang.IllegalArgumentException- seeassertJarURLProtocol(URL)
-
filter
@Nonnull public static java.util.List<java.util.jar.JarEntry> filter(java.util.jar.JarFile jarFile, JarEntryFilter jarEntryFilter)
FilterJarEntrylist fromJarFile- Parameters:
jarFile-JarFilejarEntryFilter-JarEntryFilter- Returns:
- Read-only List
-
doFilter
protected static java.util.List<java.util.jar.JarEntry> doFilter(java.lang.Iterable<java.util.jar.JarEntry> jarEntries, JarEntryFilter jarEntryFilter)
-
findJarEntry
public static java.util.jar.JarEntry findJarEntry(java.net.URL jarURL) throws java.io.IOExceptionFindJarEntryfrom specifiedurl- Parameters:
jarURL- jar resource url- Returns:
- If found , return
JarEntry - Throws:
java.io.IOException
-
extract
public static void extract(java.io.File jarSourceFile, java.io.File targetDirectory) throws java.io.IOExceptionExtract the sourceJarFileto target directory- Parameters:
jarSourceFile- the sourceJarFiletargetDirectory- target directory- Throws:
java.io.IOException- When the source jar file is an invalidJarFile
-
extract
public static void extract(java.io.File jarSourceFile, java.io.File targetDirectory, JarEntryFilter jarEntryFilter) throws java.io.IOExceptionExtract the sourceJarFileto target directory with specifiedJarEntryFilter- Parameters:
jarSourceFile- the sourceJarFiletargetDirectory- target directoryjarEntryFilter-JarEntryFilter- Throws:
java.io.IOException- When the source jar file is an invalidJarFile
-
extract
public static void extract(java.util.jar.JarFile jarFile, java.io.File targetDirectory, JarEntryFilter jarEntryFilter) throws java.io.IOExceptionExtract the sourceJarFileto target directory with specifiedJarEntryFilter- Parameters:
jarFile- the sourceJarFiletargetDirectory- target directoryjarEntryFilter-JarEntryFilter- Throws:
java.io.IOException- When the source jar file is an invalidJarFile
-
extract
public static void extract(java.net.URL jarResourceURL, java.io.File targetDirectory, JarEntryFilter jarEntryFilter) throws java.io.IOExceptionExtract the sourceJarFileto target directory with specifiedJarEntryFilter- Parameters:
jarResourceURL- The resource URL ofJarFileorJarEntrytargetDirectory- target directoryjarEntryFilter-JarEntryFilter- Throws:
java.io.IOException- When the source jar file is an invalidJarFile
-
doExtract
protected static void doExtract(java.util.jar.JarFile jarFile, java.lang.Iterable<java.util.jar.JarEntry> jarEntries, java.io.File targetDirectory) throws java.io.IOException- Throws:
java.io.IOException
-
-