SYNOPSIS

  To add a module

    module add --name=module_name [--slot=slot_name]
               --resources=list_of_jars [--resource-delimiter=delimiter]
               (--module-xml=file_path |
                ([--dependencies=list_of_module_names]
                 [--properties=list_of_properties]
                 [--main-class=fully_qualified_class_name]])
               )

  To remove a module

    module remove --name=module_name [--slot=slot_name]


DESCRIPTION

  The command is used to add and remove modules.

  When a module is added, the corresponding to the module name directory
  structure will be created in the AS7 module repository. The JAR files
  specified as resources will be copied to the module's directory. Unless
  module.xml file was specified as an argument, it will be automatically
  generated.

  When a module is removed, its module.xml and other resources will be removed
  from the module repository as well as its directory structure up to the point
  where other modules met.

  NOTE: the command can generate only simple module.xml files.
  More specifically, it supports:
  - resources-root elements that point to files;
  - modules dependencies as simple module names;
  - module's main-class;
  - module properties.


ARGUMENTS

 --name          - (required) the name of the module to be added or removed.
                   NOTE: slot is not a part of the module name.

 --slot          - (optional) specifies a slot which should be created or
                   removed. If this argument is not specified, "main" slot is
                   assumed.

 --resources     - (used with add, required unless module-xml is used) a list of
                   filesystem paths (usually jar files) separated by a
                   filesystem-specific path separator, i.e.
                   java.io.File.pathSeparatorChar. The file(s) specified will be
                   copied to the created module's directory.

 --resource-delimiter - (used with add and resources, optional)
                       A user-defined path separator for the resources argument.
                       If this argument is present, the command parser will use
                       the value here instead of the filesystem-specific path
                       separator. This allows the modules command to be used in
                       cross-platform scripts.

 --module-xml    - (used with add, optional) filesystem path to the module.xml
                   file which should be used for the added module. The file will
                   be copied to the created module's directory. If this argument
                   is not specified, module.xml file will be generated in the
                   new created module's directory.

 --dependencies  - (used with add, optional) a comma-separated list of module
                   names the module being added depends on.
                   NOTE: this argument makes sense only when the module.xml file
                   is generated, i.e. when the --module-xml argument isn't
                   specified.

 --properties    - (used with add, optional) a comma-separated list of
                   property_name=property_value pairs that will define module
                   properties.
                   NOTE: this argument makes sense only when the module.xml file
                   is generated, i.e. when the --module-xml argument isn't
                   specified.

 --main-class    - (used with add, optional) a fully qualified class name that
                   declares the modules main method.
                   NOTE: this argument makes sense only when the module.xml file
                   is generated, i.e. when the --module-xml argument isn't
                   specified.
