## wildfly:start

Full name:

org.wildfly.plugins:wildfly-maven-plugin:5.0.0.Final:start

Description:

Starts a standalone instance of WildFly Application Server.

The purpose of this goal is to start a WildFly Application Server for testing during the maven lifecycle.

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: `runtime`.
- The goal is not marked as thread-safe and thus does not support parallel builds.

### 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`
`<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`
`<domainConfig>` | `String` | `-` | The name of the domain configuration to use. This is only used for domain servers. User Property: `wildfly.domainConfig` Alias: `domain-config`
`<env>` | `Map<String,String>` | `-` | Specifies the environment variables to be passed to the process being started.
    <env>
        <HOME>/home/wildfly/</HOME>
    </env>
`<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`
`<hostConfig>` | `String` | `-` | The name of the host configuration to use. This is only used for domain servers. User Property: `wildfly.hostConfig` Alias: `host-config`
`<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`
`<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`
`<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`
`<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`
`<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. This is only used for standalone servers. User Property: `wildfly.serverConfig` Alias: `server-config`
`<serverType>` | `ServerType` | `-` | The type of server to start. `STANDALONE` for a standalone server and `DOMAIN` for a domain server. Default: `STANDALONE` User Property: `wildfly.server.type` Alias: `server-type`
`<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`
`<stdout>` | `String` | `-` | Indicates how `stdout` and `stderr` should be handled for the spawned server process. Note that `stderr` will be redirected to `stdout` if the value is defined unless the value is `none`. By default `stdout` and `stderr` are inherited from the current process. You can change the setting to one of the follow: `none` indicates the `stdout` and `stderr` stream should not be consumed. This should generally only be used if the `shutdown` goal is used in the same maven process. `System.out` or `System.err` to redirect to the current processes (use this option if you see odd behavior from maven with the default value) Any other value is assumed to be the path to a file and the `stdout` and `stderr` will be written there Note that if this goal is not later followed by a `shutdown` goal in the same maven process you should use a file to redirect the `stdout` and `stderr` to. Both output streams will be redirected to the same file. User Property: `wildfly.stdout`
`<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`

### 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`

#### <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`

#### <domainConfig>

The name of the domain configuration to use. This is only used for domain servers.

- Type: `java.lang.String`
- Required: `No`
- User Property: `wildfly.domainConfig`
- Alias: `domain-config`

#### <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`

#### <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`

#### <hostConfig>

The name of the host configuration to use. This is only used for domain servers.

- Type: `java.lang.String`
- Required: `No`
- User Property: `wildfly.hostConfig`
- Alias: `host-config`

#### <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`

#### <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`

#### <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`

#### <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`

#### <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. This is only used for standalone servers.

- Type: `java.lang.String`
- Required: `No`
- User Property: `wildfly.serverConfig`
- Alias: `server-config`

#### <serverType>

The type of server to start.

`STANDALONE` for a standalone server and `DOMAIN` for a domain server.

- Type: `org.wildfly.plugin.server.ServerType`
- Required: `No`
- User Property: `wildfly.server.type`
- Default: `STANDALONE`
- Alias: `server-type`

#### <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`

#### <stdout>

Indicates how `stdout` and `stderr` should be handled for the spawned server process. Note that `stderr` will be redirected to `stdout` if the value is defined unless the value is `none`.
By default `stdout` and `stderr` are inherited from the current process. You can change the setting to one of the follow:

- `none` indicates the `stdout` and `stderr` stream should not be consumed. This should generally only be used if the `shutdown` goal is used in the same maven process.
- `System.out` or `System.err` to redirect to the current processes (use this option if you see odd behavior from maven with the default value)
- Any other value is assumed to be the path to a file and the `stdout` and `stderr` will be written there

Note that if this goal is not later followed by a `shutdown` goal in the same maven process you should use a file to redirect the `stdout` and `stderr` to. Both output streams will be redirected to the same file.

- Type: `java.lang.String`
- Required: `No`
- User Property: `wildfly.stdout`

#### <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`