# Usage

The WildFly Maven Plugin is generally used to deploy applications or application artifacts to a running WildFly Application Server. Each goal can be explicitly executed from the command line or specified in the execution portion of the plugin in the POM file.

## The wildfly:add-resource Goal

The wildfly:add-resource goal adds a resource to the running WildFly Application Server.

For example to add a resource you type the following on the command line:

    mvn wildfly:add-resource

## The wildfly:deploy Goal

The wildfly:deploy goal deploys the application to the running WildFly Application Server.

For example to deploy, or redeploy by default, you type the following on the command line:

    mvn wildfly:deploy

## The wildfly:deploy-only Goal

The wildfly:deploy-only goal deploys the application to the running WildFly without executing any other goals by default.

For example to deploy, or redeploy by default, you type the following on the command line:

    mvn wildfly:deploy-only

## The wildfly:deploy-artifact Goal

The wildfly:deploy-artifact goal deploys an arbitrary artifact to the running WildFly.

For example to deploy the arbitrary artifact specified in you POM, you type the following on the command line:

    mvn wildfly:deploy-artifact

## The wildfly:dev Goal

The wildfly:dev goal will start WildFly and deploy your application. If the jboss-home property is not set, a server will be provisioned. The source directories will be watched for changes. If a change occurs, additional Maven goals may be executed before a possible redeploy of your deployment.

For example to run your WAR in development mode, you enter the following on the command line:

    mvn wildfly:dev

## The wildfly:package Goal

The wildfly:package goal will provision a server, execute CLI commands and deploy your application.

To execute the package goal type the following on the command line:

    mvn wildfly:package

## The wildfly:provision Goal

The wildfly:provision goal will provision a server.

To execute the provision goal type the following on the command line:

    mvn wildfly:provision

## The wildfly:redeploy Goal

The wildfly:redeploy goal will redeploy your application if and only if the application has already been deployed to the application server.

To execute the redeploy goal type the following on the command line:

    mvn wildfly:redeploy

## The wildfly:redeploy-only Goal

The wildfly:redeploy-only goal will redeploy your application if and only if the application has already been deployed to the application server. By default no other goals are invoked.

To execute the redeploy goal type the following on the command line:

    mvn wildfly:redeploy-only

## The wildfly:undeploy Goal

The wildfly:undeploy goal will undeploy your application from the from the running application server if the application has already been deployed.

To execute the undeploy goal type the following on the command line:

    mvn wildfly:undeploy

## The wildfly:run Goal

The wildfly:run goal will run WildFly and deploy your application. If the jboss-home property is not set, a server will be provisioned.

To execute the run goal type the following on the command line:

    mvn wildfly:run

## The wildfly:start Goal

The wildfly:start goal will start a WildFly. If the jboss-home property is not set, a server will be provisioned. The server will continue to run until the shutdown goal is executed, a shutdown management operation has been issued or the process is killed.

To execute the start goal type the following on the command line:

    mvn wildfly:start

## The wildfly:shutdown Goal

The wildfly:shutdown goal will shutdown a running WildFly.

To execute the shutdown goal type the following on the command line:

    mvn wildfly:shutdown

## The wildfly:execute-commands Goal

The wildfly:execute-commands goal will execute commands, formatted like CLI commands, on the running server.

To execute the execute-commands goal type the following on the command line:

    mvn wildfly:execute-commands