Version: 9.4.27.v20200227 |

Hot Deployment
Previous | Chapter 4. Deploying to Jetty Home | Next

##### Contact the core Jetty developers at www.webtide.com

private support for your internal/customer projects ... custom extensions and distributions ... versioned snapshots for indefinite support ... scalability guidance for your apps and Ajax/Comet projects ... development services for sponsored feature development

## Hot Deployment

Jetty allows for deploying an arbitrary context or web application by monitoring a directory for changes. If a web application or a context descriptor is added to the directory, Jetty’s `DeploymentManager` (DM) deploys a new context. If a context descriptor is touched or updated, the DM stops, reconfigures, and redeploys its context. If a context is removed, the DM stops it and removes it from the server.

This behavior can be controlled by configuring `WebAppProvider` properties.

monitoredDirName
  The directory to scan for possible deployable Web Applications (or Deployment Descriptor XML files).
scanInterval
  Number of seconds between scans of the provided `monitoredDirName`. A value of `0` disables the continuous hot deployment scan, Web Applications will be deployed on startup only.

The default location for this configuration is in the `${jetty.home}/etc/jetty-deploy.xml` file. To modify it as part of the Jetty distribution, first enable the `deploy` module. Once it is enabled, you can edit these properties in either the `$JETTY_BASE/start.d/deploy.ini` or `$JETTY_BASE/start.ini` file, depending on how your implementation is configured.

    <?xml version="1.0"?>
    # ---------------------------------------
    # Module: deploy
    # Enables webapplication deployment from the webapps directory.
    # ---------------------------------------
    --module=deploy

    # Monitored directory name (relative to $jetty.base)
    # jetty.deploy.monitoredDir=webapps
    # - OR -
    # Monitored directory path (fully qualified)
    # jetty.deploy.monitoredPath=/var/www/webapps

    # Defaults Descriptor for all deployed webapps
    # jetty.deploy.defaultsDescriptorPath=${jetty.base}/etc/webdefault.xml

    # Monitored directory scan period (seconds)
    # jetty.deploy.scanInterval=1

    # Whether to extract *.war files
    # jetty.deploy.extractWars=true

See Understanding the Default WebAppProvider for more configuration details.

See also Deployment Architecture for detailed conceptual information.

Previous | Top | Next
Configuring Static Content Deployment | Home | Deployment Architecture

See an error or something missing? Contribute to this documentation at Github!(Generated: 2020-02-27)