Package io.microsphere.util.jar
Class JarUtils
- java.lang.Object
-
- io.microsphere.util.jar.JarUtils
-
public class JarUtils extends java.lang.Object
Jar Utility class- Since:
- 1.0.0
- Version:
- 1.0.0
- Author:
- Mercy
- See Also:
JarEntry
,JarFile
-
-
Constructor Summary
Constructors Constructor Description JarUtils()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description protected static void
assertJarURLProtocol(java.net.URL jarURL)
protected static void
doExtract(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 void
extract(java.io.File jarSourceFile, java.io.File targetDirectory)
Extract the sourceJarFile
to target directorystatic void
extract(java.io.File jarSourceFile, java.io.File targetDirectory, JarEntryFilter jarEntryFilter)
Extract the sourceJarFile
to target directory with specifiedJarEntryFilter
static void
extract(java.net.URL jarResourceURL, java.io.File targetDirectory, JarEntryFilter jarEntryFilter)
Extract the sourceJarFile
to target directory with specifiedJarEntryFilter
static void
extract(java.util.jar.JarFile jarFile, java.io.File targetDirectory, JarEntryFilter jarEntryFilter)
Extract the sourceJarFile
to target directory with specifiedJarEntryFilter
static java.util.List<java.util.jar.JarEntry>
filter(java.util.jar.JarFile jarFile, JarEntryFilter jarEntryFilter)
FilterJarEntry
list fromJarFile
static java.util.jar.JarEntry
findJarEntry(java.net.URL jarURL)
FindJarEntry
from specifiedurl
static java.lang.String
resolveJarAbsolutePath(java.net.URL jarURL)
Resolve absolute path from theURL
ofJarEntry
static java.lang.String
resolveRelativePath(java.net.URL jarURL)
Resolve Relative path from Jar URLstatic java.util.jar.JarFile
toJarFile(java.net.URL jarURL)
Create aJarFile
from specifiedURL
ofJarFile
-
-
-
Method Detail
-
toJarFile
public static java.util.jar.JarFile toJarFile(java.net.URL jarURL) throws java.io.IOException
Create aJarFile
from specifiedURL
ofJarFile
- Parameters:
jarURL
-URL
ofJarFile
orJarEntry
- Returns:
- JarFile
- Throws:
java.io.IOException
- Ifjar file
is invalid, seeJarFile(String)
- Since:
- 1.0.0
-
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
-URL
ofJarFile
orJarEntry
- 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 theURL
ofJarEntry
- Parameters:
jarURL
-URL
ofJarFile
orJarEntry
- Returns:
- If
URL.getProtocol()
equalsjar
orfile
, resolves absolute path, or returnnull
- Throws:
java.lang.NullPointerException
- seeassertJarURLProtocol(URL)
java.lang.IllegalArgumentException
- seeassertJarURLProtocol(URL)
- Since:
- 1.0.0
-
filter
@Nonnull public static java.util.List<java.util.jar.JarEntry> filter(java.util.jar.JarFile jarFile, JarEntryFilter jarEntryFilter)
FilterJarEntry
list fromJarFile
- Parameters:
jarFile
-JarFile
jarEntryFilter
-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.IOException
FindJarEntry
from 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.IOException
Extract the sourceJarFile
to target directory- Parameters:
jarSourceFile
- the sourceJarFile
targetDirectory
- 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.IOException
Extract the sourceJarFile
to target directory with specifiedJarEntryFilter
- Parameters:
jarSourceFile
- the sourceJarFile
targetDirectory
- 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.IOException
Extract the sourceJarFile
to target directory with specifiedJarEntryFilter
- Parameters:
jarFile
- the sourceJarFile
targetDirectory
- 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.IOException
Extract the sourceJarFile
to target directory with specifiedJarEntryFilter
- Parameters:
jarResourceURL
- The resource URL ofJarFile
orJarEntry
targetDirectory
- 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
-
-