public class JarMerger extends java.lang.Object implements JarCreator
JarCreator.Relocator, JarCreator.Transformer| Modifier and Type | Field and Description |
|---|---|
static java.util.function.Predicate<java.lang.String> |
CLASSES_ONLY |
static java.util.function.Predicate<java.lang.String> |
EXCLUDE_CLASSES |
static java.lang.String |
MODULE_PATH |
static java.nio.file.attribute.FileTime |
ZERO_TIME |
| Constructor and Description |
|---|
JarMerger(java.nio.file.Path jarFile) |
JarMerger(java.nio.file.Path jarFile,
java.util.function.Predicate<java.lang.String> filter) |
| Modifier and Type | Method and Description |
|---|---|
void |
addDirectory(java.nio.file.Path directory) |
void |
addDirectory(java.nio.file.Path directory,
java.util.function.Predicate<java.lang.String> filterOverride,
JarCreator.Transformer transformer,
JarCreator.Relocator relocator) |
void |
addEntry(java.lang.String entryPath,
java.io.InputStream input) |
void |
addFile(java.lang.String entryPath,
java.nio.file.Path file) |
void |
addJar(java.nio.file.Path file) |
void |
addJar(java.nio.file.Path file,
java.util.function.Predicate<java.lang.String> filterOverride,
JarCreator.Relocator relocator) |
void |
close() |
void |
setCompressionLevel(int level)
Change the compression level for the next entries added to this jar.
|
void |
setManifestProperties(java.util.Map<java.lang.String,java.lang.String> properties) |
public static final java.util.function.Predicate<java.lang.String> CLASSES_ONLY
public static final java.util.function.Predicate<java.lang.String> EXCLUDE_CLASSES
public static final java.lang.String MODULE_PATH
public static final java.nio.file.attribute.FileTime ZERO_TIME
public JarMerger(@NonNull
java.nio.file.Path jarFile)
throws java.io.IOException
java.io.IOExceptionpublic JarMerger(@NonNull
java.nio.file.Path jarFile,
@Nullable
java.util.function.Predicate<java.lang.String> filter)
throws java.io.IOException
java.io.IOExceptionpublic void addDirectory(@NonNull
java.nio.file.Path directory)
throws java.io.IOException
addDirectory in interface JarCreatorjava.io.IOExceptionpublic void addDirectory(@NonNull
java.nio.file.Path directory,
@Nullable
java.util.function.Predicate<java.lang.String> filterOverride,
@Nullable
JarCreator.Transformer transformer,
@Nullable
JarCreator.Relocator relocator)
throws java.io.IOException
addDirectory in interface JarCreatorjava.io.IOExceptionpublic void addJar(@NonNull
java.nio.file.Path file)
throws java.io.IOException
addJar in interface JarCreatorjava.io.IOExceptionpublic void addJar(@NonNull
java.nio.file.Path file,
@Nullable
java.util.function.Predicate<java.lang.String> filterOverride,
@Nullable
JarCreator.Relocator relocator)
throws java.io.IOException
addJar in interface JarCreatorjava.io.IOExceptionpublic void addFile(@NonNull
java.lang.String entryPath,
@NonNull
java.nio.file.Path file)
throws java.io.IOException
addFile in interface JarCreatorjava.io.IOExceptionpublic void addEntry(@NonNull
java.lang.String entryPath,
@NonNull
java.io.InputStream input)
throws java.io.IOException
addEntry in interface JarCreatorjava.io.IOExceptionpublic void setCompressionLevel(int level)
ZipOutputStream.setLevel(int) for more details.
Use 0 for no compression.
setCompressionLevel in interface JarCreatorlevel - the compression level (0-9)public void close()
throws java.io.IOException
close in interface java.io.Closeableclose in interface java.lang.AutoCloseablejava.io.IOExceptionpublic void setManifestProperties(java.util.Map<java.lang.String,java.lang.String> properties)
throws java.io.IOException
setManifestProperties in interface JarCreatorjava.io.IOException