The Spring Boot AntLib module provides basic Spring Boot support for Apache Ant. You can
use the module to create executable jars. To use the module you need to declare an
additional spring-boot
namespace in your build.xml
:
<project xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:spring-boot="antlib:org.springframework.boot.ant" name="myapp" default="build"> ... </project>
You’ll need to remember to start Ant using the -lib
option, for example:
$ ant -lib <folder containing spring-boot-antlib-1.3.9.BUILD-SNAPSHOT.jar>
Tip | |
---|---|
The “Using Spring Boot” section includes a more complete example of
using Apache Ant with |
Once the spring-boot-antlib
namespace has been declared, the following additional
tasks are available.
The exejar
task can be used to creates a Spring Boot executable jar. The following
attributes are supported by the task:
Attribute | Description | Required |
---|---|---|
| The destination jar file to create | Yes |
| The root directory of Java class files | Yes |
| The main application class to run | No (default is first class found declaring a |
The following nested elements can be used with the task:
Element | Description |
---|---|
| One or more Resource Collections describing a set of Resources that should be added to the content of the created jar file. |
| One or more Resource Collections that should be added to the set of jar libraries that make up the runtime dependency classpath of the application. |
Specify start-class.
<spring-boot:exejar destfile="target/my-application.jar" classes="target/classes" start-class="com.foo.MyApplication"> <resources> <fileset dir="src/main/resources" /> </resources> <lib> <fileset dir="lib" /> </lib> </spring-boot:exejar>
Detect start-class.
<exejar destfile="target/my-application.jar" classes="target/classes"> <lib> <fileset dir="lib" /> </lib> </exejar>
The findmainclass
task is used internally by exejar
to locate a class declaring a
main
. You can also use this task directly in your build if needed. The following
attributes are supported
Attribute | Description | Required |
---|---|---|
| The root directory of Java class files | Yes (unless |
| Can be used to short-circuit the | No |
| The Ant property that should be set with the result | No (result will be logged if unspecified) |