Merlin CLI
Overview
Merlin CLI is the command line interface to the Merlin system. It provides support for the declaration of the root block directive, a working home directory, a kernel directive, and other parameters qualifying debug output and language policy.
The prime objective the Merlin CLI is to launch a root block descriptor and facilitate the deployment of the block and as a consequence, the deployment of subsidiary blocks, containers and components.
Command Line
The Merlin CLI takes a [block] filename as it's primary argument. The block may be a block XML file or a jar file containing a block directive.
Example of block deployment based on a supplied block directive.
$ merlin -help usage: merlin [block] [-lang <code>] [-anchor <directory>] [-help] [-version] [-home <directory>] [-impl <artifact>] [-debug] [-info] [-config <url>] [-context <directory>] [-system <directory>] [-execute] [-repository <directory>] [-kernel <url>]
Command Line Qualifiers
Qualifier | Parameter | Description |
---|---|---|
lang | A two letter country code | Sets the default language country code to the supplied value. |
anchor | directory | Override the default anchor directory for jar extension references and classpath include relative file references. |
help | Prints the help message. | |
version | Prints Merlin version information and exit. | |
home | directory | Overide the ${merlin.dir} directory. This is a relative or absolute path to a working directory. If not suppled, the system will default to ${user.dir}. |
impl | artifact-spec | Override the ${merlin.implementation} artifact spec. The specification is the formal of [group]:[artifact];[version] and is used to direct the boostrap system to load an alternative kernel implementation. |
debug | Instructs Merlin to issue internal system debug messages. | |
info | Lists deployment parameters on startup. | |
config | url | A configuration source containing a set of target configuration fragements that will override configuration entries defined under a block. This value overrides any ${merlin.override} property value. If the supplied argument is a file (relative or absolute) Merlin will convert the file to a url. Relative file references are resolved relative to ${merlin.dir}. |
context | directory | Overide the ${merlin.context} directory. This is a relative or absolute path to a working context directory. If not suppled, the system will default to ${merlin.dir}/home. |
system | directory | Overide the ${merlin.system} directory. This is a relative or absolute path to the merlin system repository. The default value resolves to ${merlin.home}/system. |
execute | Forces ${merlin.server} to false resulting in the immediate shutdown of the kernel on completion of the deployment phase. If not included merlin will apply the default ${merlin.server} mode of 'true'. | |
repository | file | Declaration of a local repository cache directory. If not suppplied Merlin will default to ${avalon.home}/repository. |
kernel | url | A url of a kernel configuration overriding the default kernel directive. The value defaults to ${merlin.config}/kernel.xml. |