public class BootJar extends Jar implements BootArchive
Jar
task that produces a Spring Boot executable jar.Task.Namer
DEFAULT_EXTENSION
ZIP_EXTENSION
TASK_ACTION, TASK_DEPENDS_ON, TASK_DESCRIPTION, TASK_GROUP, TASK_NAME, TASK_OVERWRITE, TASK_TYPE
Constructor and Description |
---|
BootJar()
Creates a new
BootJar task. |
Modifier and Type | Method and Description |
---|---|
CopySpec |
bootInf(Action<CopySpec> action)
Calls the given
action to add content to the BOOT-INF directory of
the jar. |
void |
classpath(java.lang.Object... classpath)
Adds files to the classpath to include in the archive.
|
void |
copy() |
protected org.gradle.api.internal.file.copy.CopyAction |
createCopyAction() |
CopySpec |
getBootInf()
Returns a
CopySpec that can be used to add content to the BOOT-INF
directory of the jar. |
FileCollection |
getClasspath()
Returns the classpath that will be included in the archive.
|
LaunchScriptConfiguration |
getLaunchScript()
Returns the
LaunchScriptConfiguration that will control the script that is
prepended to the archive. |
java.lang.String |
getMainClassName()
Returns the name of the main class of the application.
|
boolean |
isExcludeDevtools()
Returns
true if the Devtools jar should be excluded, otherwise
false . |
void |
launchScript()
Configures the archive to have a prepended launch script.
|
void |
launchScript(Action<LaunchScriptConfiguration> action)
Configures the archive to have a prepended launch script, customizing its
configuration using the given
action . |
void |
requiresUnpack(Spec<FileTreeElement> spec)
Adds a spec that identifies files that must be unpacked from the archive when it is
launched.
|
void |
requiresUnpack(java.lang.String... patterns)
Adds Ant-style patterns that identify files that must be unpacked from the archive
when it is launched.
|
protected ZipCompression |
resolveZipCompression(FileCopyDetails details)
Returns the
ZipCompression that should be used when adding the file
represented by the given details to the jar. |
void |
setClasspath(FileCollection classpath)
Sets the classpath to include in the archive.
|
void |
setClasspath(java.lang.Object classpath)
Sets the classpath to include in the archive.
|
void |
setExcludeDevtools(boolean excludeDevtools)
Sets whether or not the Devtools jar should be excluded.
|
void |
setMainClassName(java.lang.String mainClassName)
Sets the name of the main class of the application.
|
getManifest, getManifestContentCharset, getMetadataCharset, getMetaInf, manifest, metaInf, metaInf, setManifest, setManifestContentCharset, setMetadataCharset
getCompressor, getEntryCompression, isZip64, setEntryCompression, setZip64
createCopyActionExecuter, getAppendix, getArchiveName, getArchivePath, getBaseName, getClassifier, getDestinationDir, getExtension, getVersion, into, into, into, isPreserveFileTimestamps, isReproducibleFileOrder, setAppendix, setArchiveName, setBaseName, setClassifier, setDestinationDir, setExtension, setPreserveFileTimestamps, setReproducibleFileOrder, setVersion
createRootSpec, eachFile, eachFile, exclude, exclude, exclude, exclude, expand, filesMatching, filesMatching, filesNotMatching, filesNotMatching, filter, filter, filter, filter, from, from, from, getDirectoryFileTreeFactory, getDirMode, getDuplicatesStrategy, getExcludes, getFileLookup, getFileMode, getFileResolver, getFileSystem, getFilteringCharset, getIncludeEmptyDirs, getIncludes, getInstantiator, getMainSpec, getRootSpec, getSource, include, include, include, include, isCaseSensitive, rename, rename, rename, rename, setCaseSensitive, setDirMode, setDuplicatesStrategy, setExcludes, setFileMode, setFilteringCharset, setIncludeEmptyDirs, setIncludes, with
conventionMapping, conventionMapping, getConventionMapping
newInputDirectory, newInputFile, newOutputDirectory, newOutputFile
addValidator, appendParallelSafeAction, compareTo, configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doFirst, doLast, doLast, doLast, execute, finalizedBy, getActions, getAnt, getAsDynamicObject, getConvention, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getExecuter, getExtensions, getFinalizedBy, getGroup, getIdentityPath, getImpliesSubProjects, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOnlyIf, getOutputs, getPath, getProject, getServices, getShouldRunAfter, getStandardOutputCapture, getState, getTaskActions, getTaskDependencies, getTemporaryDir, getTemporaryDirFactory, getValidators, hasProperty, injectIntoNewInstance, isEnabled, isHasCustomActions, leftShift, mustRunAfter, onlyIf, onlyIf, prependParallelSafeAction, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setExecuter, setFinalizedBy, setGroup, setImpliesSubProjects, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
configure, deleteAllActions, dependsOn, dependsOnTaskDidWork, doFirst, doFirst, doFirst, doLast, doLast, doLast, finalizedBy, getActions, getAnt, getConvention, getDependsOn, getDescription, getDestroyables, getDidWork, getEnabled, getFinalizedBy, getGroup, getInputs, getLocalState, getLogger, getLogging, getMustRunAfter, getName, getOutputs, getPath, getProject, getShouldRunAfter, getState, getTaskDependencies, getTemporaryDir, hasProperty, leftShift, mustRunAfter, onlyIf, onlyIf, property, setActions, setDependsOn, setDescription, setDidWork, setEnabled, setFinalizedBy, setGroup, setMustRunAfter, setOnlyIf, setOnlyIf, setProperty, setShouldRunAfter, shouldRunAfter
getExtensions
public void copy()
copy
in class AbstractCopyTask
protected org.gradle.api.internal.file.copy.CopyAction createCopyAction()
createCopyAction
in class Zip
public java.lang.String getMainClassName()
BootArchive
getMainClassName
in interface BootArchive
public void setMainClassName(java.lang.String mainClassName)
BootArchive
setMainClassName
in interface BootArchive
mainClassName
- the name of the main class of the applicationpublic void requiresUnpack(java.lang.String... patterns)
BootArchive
requiresUnpack
in interface BootArchive
patterns
- the patternspublic void requiresUnpack(Spec<FileTreeElement> spec)
BootArchive
requiresUnpack
in interface BootArchive
spec
- the specpublic LaunchScriptConfiguration getLaunchScript()
BootArchive
LaunchScriptConfiguration
that will control the script that is
prepended to the archive.getLaunchScript
in interface BootArchive
null
if the launch script has
not been configured.public void launchScript()
BootArchive
launchScript
in interface BootArchive
public void launchScript(Action<LaunchScriptConfiguration> action)
BootArchive
action
.launchScript
in interface BootArchive
action
- the action to applypublic FileCollection getClasspath()
BootArchive
getClasspath
in interface BootArchive
public void classpath(java.lang.Object... classpath)
BootArchive
classpath
is evaluated as per Project.files(Object...)
.classpath
in interface BootArchive
classpath
- the additions to the classpathpublic void setClasspath(java.lang.Object classpath)
BootArchive
classpath
is
evaluated as per Project.files(Object...)
.setClasspath
in interface BootArchive
classpath
- the classpathpublic void setClasspath(FileCollection classpath)
BootArchive
setClasspath
in interface BootArchive
classpath
- the classpathpublic boolean isExcludeDevtools()
BootArchive
true
if the Devtools jar should be excluded, otherwise
false
.isExcludeDevtools
in interface BootArchive
true
if the Devtools jar should be excluded, or false
if
notpublic void setExcludeDevtools(boolean excludeDevtools)
BootArchive
setExcludeDevtools
in interface BootArchive
excludeDevtools
- true
if the Devtools jar should be excluded, or
false
if notpublic CopySpec getBootInf()
CopySpec
that can be used to add content to the BOOT-INF
directory of the jar.CopySpec
for BOOT-INF
public CopySpec bootInf(Action<CopySpec> action)
action
to add content to the BOOT-INF
directory of
the jar.action
- the Action
to callCopySpec
for BOOT-INF
that was passed to the
Action
protected ZipCompression resolveZipCompression(FileCopyDetails details)
ZipCompression
that should be used when adding the file
represented by the given details
to the jar.
By default, any file in BOOT-INF/lib/
is stored and all other files are
deflated.
details
- the details