Using development snapshots

Sometimes there is a need to use a development version of a SeedStack component in your project, for testing purposes. This guide will help you configure Maven to access SeedStack SNAPSHOT dependencies.

Conversion to WAR

SeedStack projects created by the generate goal of the SeedStack Maven plugin are designed to be run from command-line with an embedded Web server. You can convert this kind of project to a classic WAR.

Dump effective configuration

The effective-config goal produces a YAML dump of the configuration as scanned, parsed and aggregated by SeedStack. This will show the global configuration as the application sees it.

Dump effective test configuration

The effective-test-config goal produces a YAML dump of the test configuration as scanned, parsed and aggregated by SeedStack. This will show the global configuration as the application sees it, including the test classpath.

Hot-reloading

The watch goal runs any self-executable SeedStack application in hot-reloading mode.

JAR Packaging

The package goal packages any self-executable SeedStack application in a Capsule. A Capsule is a way of packaging and running any application with all its dependencies from a unique plain executable JAR.

Project generation

To create a SeedStack project from scratch you can use generate goal from the SeedStack Maven Plugin. This goal is invoked from the command line.

Running

The run goal runs any self-executable SeedStack application directly from the command line.

Shell function

To simplify the invocation of the SeedStack plugin you can define the following UNIX shell function in your profile: function seedstack { if [ -z "$1" ]; then echo "Usage: seedstack GOAL [ARGS]..." return 1 fi GOAL=$1 shift mvn -q -Dargs="$*" org.seedstack:seedstack-maven-plugin:$GOAL } This enables you to execute goals which use an args system property with real arguments: seedstack config application.basePackages Which is the equivalent of: mvn -q -Dargs="application.

Usage

The SeedStack Maven plugin provides goals to manage SeedStack-based artifacts.