wildfly:dev

Full name:

org.wildfly.plugins:wildfly-maven-plugin:5.1.1.Final:dev

Description:

Starts a standalone instance of WildFly and deploys the application to the server. The deployment type must be a WAR. Once the server is running, the source directories are monitored for changes. If required the sources will be compiled and the deployment may be redeployed.

Note that changes to the POM file are not monitored. If changes are made the POM file, the process will need to be terminated and restarted.

Note that if a WildFly Bootable JAR is packaged, it is ignored by this goal.

Attributes:

  • Requires a Maven project to be executed.
  • Requires dependency resolution of artifacts in scope: compile+runtime.
  • The goal is not marked as thread-safe and thus does not support parallel builds.
  • Since version: 4.1.
  • Binds by default to the lifecycle phase: package.

Optional Parameters

Name Type Since Description
<addUser> AddUser - The users to add to the server.
User Property: wildfly.add-user
Alias: add-user
<authenticationConfig> URL - A URL which points to the authentication configuration (wildfly-config.xml) the client uses to authenticate with the server.
User Property: wildfly.authConfig
Alias: authentication-config
<channels> List<ChannelConfiguration> - A list of channels used for resolving artifacts while provisioning.

Defining a channel:

<channels>
    <channel>
        <manifest>
            <groupId>org.wildfly.channels</groupId>
            <artifactId>wildfly-30.0</artifactId>
        </manifest>
    </channel>
    <channel>
        <manifest>
            <url>https://example.example.org/channel/30</url>
        </manifest>
    </channel>
</channels>

The wildfly.channels property can be used pass a comma delimited string for the channels. The channel can be a URL or a Maven GAV. If a Maven GAV is used, the groupId and artifactId are required.
Examples:

    -Dwildfly.channels="https://channels.example.org/30"
    -Dwildfly.channels="https://channels.example.org/30,org.example.channel:updates-30"
    -Dwildfly.channels="https://channels.example.org/30,org.example.channel:updates-30:1.0.2"


User Property: wildfly.channels
<commands> List<String> - The CLI commands to execute before the deployment is deployed.
User Property: wildfly.commands
<debug> boolean - Starts the server with debugging enabled.
Default: false
User Property: wildfly.debug
<debugHost> String - Sets the hostname to listen on for debugging. An * means all hosts.
Default: *
User Property: wildfly.debug.host
<debugPort> int - Sets the port the debugger should listen on.
Default: 8787
User Property: wildfly.debug.port
<debugSuspend> boolean - Indicates whether the server should suspend itself until a debugger is attached.
Default: false
User Property: wildfly.debug.suspend
<discoverProvisioningInfo> GlowConfig 5.0 Galleon provisioning information discovery. This discovery only applies when the server is running locally. NOTE: overwriteProvisionedServer must be set to true.
Alias: discover-provisioning-info
<env> Map<String,String> - Specifies the environment variables to be passed to the process being started.
<env>
    <HOME>/home/wildfly/</HOME>
</env>
<excludedLayers> List<String> - A list of Galleon layers to exclude. Can be used when feature-pack-location or feature-packs are set. Use the System property wildfly.provisioning.layers.excluded to provide a comma separated list of layers to exclude.
User Property: wildfly.provisioning.layers.excluded
Alias: excluded-layers
<featurePackLocation> String - The feature pack location. See the documentation for details on how to format a feature pack location.

Note that if you define the version in the feature pack location, e.g. #26.1.1.Final, the version configuration parameter should be left blank.


User Property: wildfly.feature-pack.location
Alias: feature-pack-location
<featurePacks> List<GalleonFeaturePack> - A list of feature-pack configurations to install, can be combined with layers. Use the System property wildfly.provisioning.feature-packs to provide a comma separated list of feature-packs.
User Property: wildfly.provisioning.feature-packs
Alias: feature-packs
<galleonOptions> Map<String,String> - Arbitrary Galleon options used when provisioning the server. In case you are building a large amount of server in the same maven session, it is strongly advised to set 'jboss-fork-embedded' option to 'true' in order to fork Galleon provisioning and CLI scripts execution in dedicated processes. For example:
  <galleon-options>
    <jboss-fork-embedded>true</jboss-fork-embedded>
  </galleon-options>

Alias: galleon-options
<hostname> String - Specifies the host name of the server where the deployment plan should be executed.
Default: localhost
User Property: wildfly.hostname
<id> String - Specifies the id of the server if the username and password is to be retrieved from the settings.xml file
User Property: wildfly.id
<ignorePatterns> List<String> - File patterns that we should ignore during watch.

Hidden files and files ending with '~' are ignored.

You can set the system property wildfly.dev.ignore.patterns to a white space separated list of file patterns.


User Property: wildfly.dev.ignore.patterns
Alias: ignore-patterns
<javaHome> String - The JAVA_HOME to use for launching the server.
User Property: java.home
Alias: java-home
<javaOpts> String[] - The JVM options to use.
User Property: wildfly.javaOpts
Alias: java-opts
<jbossHome> String - The WildFly Application Server's home directory. If not used, WildFly will be downloaded.
User Property: jboss-as.home
Alias: jboss-home
<layers> List<String> - A list of Galleon layers to provision. Can be used when feature-pack-location or feature-packs are set. Use the System property wildfly.provisioning.layers to provide a comma separated list of layers.
User Property: wildfly.provisioning.layers
Alias: layers
<moduleOptions> String[] - Options passed to JBoss Modules. This is useful for things like Java Agents where you need to start the server with an agent.
User Property: wildfly.moduleOptions
Alias: module-options
<modulesPath> ModulesPath - The modules path or paths to use. A single path can be used or multiple paths by enclosing them in a paths element.
User Property: wildfly.modulesPath
Alias: modules-path
<name> String - Specifies the name used for the deployment.

When the deployment is copied to the server, it is renamed with this name.


User Property: wildfly.deployment.name
<offlineProvisioning> boolean - Whether to use offline mode when the plugin resolves an artifact. In offline mode the plugin will only use the local Maven repository for an artifact resolution.
Default: false
User Property: wildfly.provisioning.offline
Alias: offline-provisioning
<overwriteProvisionedServer> boolean 5.0 Set to true if you want to delete the existing server referenced from the provisioningDir and provision a new one, otherwise false. When { @code discover-provisioning-info } is set to true, this option is enforced to be true. When discovery of Galleon provisioning information is enabled, a change to the application source code could imply re-provisioning of the server.
Default: false
User Property: wildfly.provisioning.overwrite-provisioned-server
Alias: overwrite-provisioned-server
<password> String - Specifies the password to use if prompted to authenticate by the server.

If no password is specified and the server requests authentication the user will be prompted to supply the password,
User Property: wildfly.password
<port> int - Specifies the port number the server is listening on.
Default: 9990
User Property: wildfly.port
<propertiesFile> String - The path to the system properties file to load.
User Property: wildfly.propertiesFile
Alias: properties-file
<protocol> String - The protocol used to connect to the server for management.
User Property: wildfly.protocol
<provisioningDir> String 3.0 The directory name inside the buildDir where to provision the default server. By default the server is provisioned into the 'server' directory.
Default: server
User Property: wildfly.provisioning.dir
Alias: provisioning-dir
<remote> boolean - If set to true a server will not be provisioned or started and the application will be deployed to a remote server.
Default: false
User Property: wildfly.dev.remote
<scripts> List<File> - The CLI script files to execute before the deployment is deployed.
User Property: wildfly.scripts
<serverArgs> String[] - The arguments to be passed to the server.
User Property: wildfly.serverArgs
Alias: server-args
<serverConfig> String - The path to the server configuration to use.
User Property: wildfly.serverConfig
Alias: server-config
<skip> boolean - Set to true if you want to skip this goal, otherwise false.
Default: false
User Property: wildfly.skip
<startupTimeout> long - The timeout value to use when starting the server.
Default: 60
User Property: wildfly.startupTimeout
Alias: startup-timeout
<timeout> int - The timeout, in seconds, to wait for a management connection.
Default: 60
User Property: wildfly.timeout
<username> String - Specifies the username to use if prompted to authenticate by the server.

If no username is specified and the server requests authentication the user will be prompted to supply the username,
User Property: wildfly.username
<version> String - The version of the WildFly default server to install in case no jboss-home has been set and no server has previously been provisioned.

The latest stable version is resolved if left blank.


User Property: wildfly.version
<webExtensions> List<String> - Additional extensions of files located in src/webapp directory and its sub-directories that don't require a redeployment on update.

The builtin list is html, xhtml, jsp, js, css.

You can set the system property wildfly.dev.web.extensions to a white space separated list of file extensions.


User Property: wildfly.dev.web.extensions
Alias: web-extensions

Parameter Details

<addUser>

The users to add to the server.
  • Type: org.wildfly.plugin.server.AddUser
  • Required: No
  • User Property: wildfly.add-user
  • Alias: add-user

<authenticationConfig>

A URL which points to the authentication configuration (wildfly-config.xml) the client uses to authenticate with the server.
  • Type: java.net.URL
  • Required: No
  • User Property: wildfly.authConfig
  • Alias: authentication-config

<channels>

A list of channels used for resolving artifacts while provisioning.

Defining a channel:

<channels>
    <channel>
        <manifest>
            <groupId>org.wildfly.channels</groupId>
            <artifactId>wildfly-30.0</artifactId>
        </manifest>
    </channel>
    <channel>
        <manifest>
            <url>https://example.example.org/channel/30</url>
        </manifest>
    </channel>
</channels>

The wildfly.channels property can be used pass a comma delimited string for the channels. The channel can be a URL or a Maven GAV. If a Maven GAV is used, the groupId and artifactId are required.
Examples:

    -Dwildfly.channels="https://channels.example.org/30"
    -Dwildfly.channels="https://channels.example.org/30,org.example.channel:updates-30"
    -Dwildfly.channels="https://channels.example.org/30,org.example.channel:updates-30:1.0.2"

  • Type: java.util.List<org.wildfly.plugin.provision.ChannelConfiguration>
  • Required: No
  • User Property: wildfly.channels

<commands>

The CLI commands to execute before the deployment is deployed.
  • Type: java.util.List<java.lang.String>
  • Required: No
  • User Property: wildfly.commands

<debug>

Starts the server with debugging enabled.
  • Type: boolean
  • Required: No
  • User Property: wildfly.debug
  • Default: false

<debugHost>

Sets the hostname to listen on for debugging. An * means all hosts.
  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.debug.host
  • Default: *

<debugPort>

Sets the port the debugger should listen on.
  • Type: int
  • Required: No
  • User Property: wildfly.debug.port
  • Default: 8787

<debugSuspend>

Indicates whether the server should suspend itself until a debugger is attached.
  • Type: boolean
  • Required: No
  • User Property: wildfly.debug.suspend
  • Default: false

<discoverProvisioningInfo>

Galleon provisioning information discovery. This discovery only applies when the server is running locally. NOTE: overwriteProvisionedServer must be set to true.
  • Type: org.wildfly.plugin.provision.GlowConfig
  • Since: 5.0
  • Required: No
  • Alias: discover-provisioning-info

<env>

Specifies the environment variables to be passed to the process being started.
<env>
    <HOME>/home/wildfly/</HOME>
</env>
  • Type: java.util.Map<java.lang.String, java.lang.String>
  • Required: No

<excludedLayers>

A list of Galleon layers to exclude. Can be used when feature-pack-location or feature-packs are set. Use the System property wildfly.provisioning.layers.excluded to provide a comma separated list of layers to exclude.
  • Type: java.util.List<java.lang.String>
  • Required: No
  • User Property: wildfly.provisioning.layers.excluded
  • Alias: excluded-layers

<featurePackLocation>

The feature pack location. See the documentation for details on how to format a feature pack location.

Note that if you define the version in the feature pack location, e.g. #26.1.1.Final, the version configuration parameter should be left blank.

  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.feature-pack.location
  • Alias: feature-pack-location

<featurePacks>

A list of feature-pack configurations to install, can be combined with layers. Use the System property wildfly.provisioning.feature-packs to provide a comma separated list of feature-packs.
  • Type: java.util.List<org.jboss.galleon.api.GalleonFeaturePack>
  • Required: No
  • User Property: wildfly.provisioning.feature-packs
  • Alias: feature-packs

<galleonOptions>

Arbitrary Galleon options used when provisioning the server. In case you are building a large amount of server in the same maven session, it is strongly advised to set 'jboss-fork-embedded' option to 'true' in order to fork Galleon provisioning and CLI scripts execution in dedicated processes. For example:
  <galleon-options>
    <jboss-fork-embedded>true</jboss-fork-embedded>
  </galleon-options>
  • Type: java.util.Map<java.lang.String, java.lang.String>
  • Required: No
  • Alias: galleon-options

<hostname>

Specifies the host name of the server where the deployment plan should be executed.
  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.hostname
  • Default: localhost

<id>

Specifies the id of the server if the username and password is to be retrieved from the settings.xml file
  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.id

<ignorePatterns>

File patterns that we should ignore during watch.

Hidden files and files ending with '~' are ignored.

You can set the system property wildfly.dev.ignore.patterns to a white space separated list of file patterns.

  • Type: java.util.List<java.lang.String>
  • Required: No
  • User Property: wildfly.dev.ignore.patterns
  • Alias: ignore-patterns

<javaHome>

The JAVA_HOME to use for launching the server.
  • Type: java.lang.String
  • Required: No
  • User Property: java.home
  • Alias: java-home

<javaOpts>

The JVM options to use.
  • Type: java.lang.String[]
  • Required: No
  • User Property: wildfly.javaOpts
  • Alias: java-opts

<jbossHome>

The WildFly Application Server's home directory. If not used, WildFly will be downloaded.
  • Type: java.lang.String
  • Required: No
  • User Property: jboss-as.home
  • Alias: jboss-home

<layers>

A list of Galleon layers to provision. Can be used when feature-pack-location or feature-packs are set. Use the System property wildfly.provisioning.layers to provide a comma separated list of layers.
  • Type: java.util.List<java.lang.String>
  • Required: No
  • User Property: wildfly.provisioning.layers
  • Alias: layers

<moduleOptions>

Options passed to JBoss Modules. This is useful for things like Java Agents where you need to start the server with an agent.
  • Type: java.lang.String[]
  • Required: No
  • User Property: wildfly.moduleOptions
  • Alias: module-options

<modulesPath>

The modules path or paths to use. A single path can be used or multiple paths by enclosing them in a paths element.
  • Type: org.wildfly.plugin.server.ModulesPath
  • Required: No
  • User Property: wildfly.modulesPath
  • Alias: modules-path

<name>

Specifies the name used for the deployment.

When the deployment is copied to the server, it is renamed with this name.

  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.deployment.name

<offlineProvisioning>

Whether to use offline mode when the plugin resolves an artifact. In offline mode the plugin will only use the local Maven repository for an artifact resolution.
  • Type: boolean
  • Required: No
  • User Property: wildfly.provisioning.offline
  • Default: false
  • Alias: offline-provisioning

<overwriteProvisionedServer>

Set to true if you want to delete the existing server referenced from the provisioningDir and provision a new one, otherwise false. When { @code discover-provisioning-info } is set to true, this option is enforced to be true. When discovery of Galleon provisioning information is enabled, a change to the application source code could imply re-provisioning of the server.
  • Type: boolean
  • Since: 5.0
  • Required: No
  • User Property: wildfly.provisioning.overwrite-provisioned-server
  • Default: false
  • Alias: overwrite-provisioned-server

<password>

Specifies the password to use if prompted to authenticate by the server.

If no password is specified and the server requests authentication the user will be prompted to supply the password,
  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.password

<port>

Specifies the port number the server is listening on.
  • Type: int
  • Required: No
  • User Property: wildfly.port
  • Default: 9990

<propertiesFile>

The path to the system properties file to load.
  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.propertiesFile
  • Alias: properties-file

<protocol>

The protocol used to connect to the server for management.
  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.protocol

<provisioningDir>

The directory name inside the buildDir where to provision the default server. By default the server is provisioned into the 'server' directory.
  • Type: java.lang.String
  • Since: 3.0
  • Required: No
  • User Property: wildfly.provisioning.dir
  • Default: server
  • Alias: provisioning-dir

<remote>

If set to true a server will not be provisioned or started and the application will be deployed to a remote server.
  • Type: boolean
  • Required: No
  • User Property: wildfly.dev.remote
  • Default: false

<scripts>

The CLI script files to execute before the deployment is deployed.
  • Type: java.util.List<java.io.File>
  • Required: No
  • User Property: wildfly.scripts

<serverArgs>

The arguments to be passed to the server.
  • Type: java.lang.String[]
  • Required: No
  • User Property: wildfly.serverArgs
  • Alias: server-args

<serverConfig>

The path to the server configuration to use.
  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.serverConfig
  • Alias: server-config

<skip>

Set to true if you want to skip this goal, otherwise false.
  • Type: boolean
  • Required: No
  • User Property: wildfly.skip
  • Default: false

<startupTimeout>

The timeout value to use when starting the server.
  • Type: long
  • Required: No
  • User Property: wildfly.startupTimeout
  • Default: 60
  • Alias: startup-timeout

<timeout>

The timeout, in seconds, to wait for a management connection.
  • Type: int
  • Required: No
  • User Property: wildfly.timeout
  • Default: 60

<username>

Specifies the username to use if prompted to authenticate by the server.

If no username is specified and the server requests authentication the user will be prompted to supply the username,
  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.username

<version>

The version of the WildFly default server to install in case no jboss-home has been set and no server has previously been provisioned.

The latest stable version is resolved if left blank.

  • Type: java.lang.String
  • Required: No
  • User Property: wildfly.version

<webExtensions>

Additional extensions of files located in src/webapp directory and its sub-directories that don't require a redeployment on update.

The builtin list is html, xhtml, jsp, js, css.

You can set the system property wildfly.dev.web.extensions to a white space separated list of file extensions.

  • Type: java.util.List<java.lang.String>
  • Required: No
  • User Property: wildfly.dev.web.extensions
  • Alias: web-extensions