## Options for the install4j Command Line Compiler |

The install4j command line compiler has the following options:

- -h or --help
  Displays a quick help for all available options.
- -V or --version
  Displays the version of install4j in the following format:

          install4j version 2.0, built on 2003-10-15

- -v or --verbose
  Enables verbose mode. In verbose mode, install4j prints out information about internal processes. If you experience problems with install4j, please make sure to include the verbose terminal output with your bug report.
- -q or --quiet
  Enables quiet mode. In quiet mode, no terminal output short of a fatal error will be printed.
- -t or --test
  Enables test mode. In test mode, no media files will be generated in the media file directory.
- -g or --debug
  Create additional debug installers for each media file. For each built media file, a directory that is named like the media file will be created in the media file output directory.
- -n or --faster
  Disable LZMA and Pack200 compression. If you have enabled LZMA or Pack200 compression on the media file options tab, this allows you to create development builds much faster, since LZMA and Pack200 are expensive compression algorithms.
- -L or --license=KEY
  Update the license key on the command line. This is useful if you have installed install4j on a headless system and cannot start the GUI. `KEY` must be replaced with your license key.
- -r STRING or --release=STRING
  Override the application version defined in the General Settings step. `STRING` must be replaced with the desired version number. The version number may only contain numbers and dots.
- -d STRING or --destination=STRING
  Override the output directory for the generated media files. `STRING` must be replaced with the desired directory. If the directory contains spaces, you must enclose STRING in quotation marks.
- -s or --build-selected
  Only build the media files which have been selected in the install4j IDE. By default, all media files are built regardless of the selection in the Build step.
- -b LIST or --build-ids=LIST
  Only build the media files with the specified IDs. `LIST` must be replaced with a comma separated list of numeric IDs. The IDs for media files can be shown in the install4j IDE by choosing Media->Show media file IDs from the main menu when the media file step is visible. Examples would be:

          -b 2,5,9
          --build-ids=2,5,9

- -m or --media-types=T[,T]
  Only build media files of the specified type. `T` must be replaced with a media file type recognized by install4j. To see the list of supported media types, execute `install4jc --list-media-types`. Examples would be:

          -m win32,macos,macosFolder
          --media-types=win32,macos,macosFolder

- -D NAME=VALUE[,NAME=VALUE]
  Override a compiler variable with a different value. You can override multiple variables by specifying a comma separated list of name value pairs. `NAME` must be the name of a variable that has been defined on the Compiler Variables tab of the General Settings step. The value can be empty.

  To override a variable for a specific media file definition only, you can prefix `NAME` with `ID:` to specify the ID of the media file. The IDs for media files can be shown in the install4j IDE by choosing Media->Show media file IDs from the main menu when the media file step is visible.

  Examples would be:

          -D MYVARIABLE=15,OTHERVARIABLE=
          "-D MYVARIABLE=15,OTHERVARIABLE=test,8:MEDIASETTITLE=my title"

  A special system variable that you can override from the command line is `LANGUAGE_ID`. `LANGUAGE_ID` must be set to the ISO code of the language displayed in the Language selection dialog and determines the principal installer language for the project or the media file.

- -f or --var-file
  Load variable definitions from a file. This option can be used together with the `-D` option, which takes precedence if a variable occurs twice. The file can contain
  - variable definitions
    One variable definition per line of the form `NAME=VALUE`.
  - blank lines
    blank lines will be ignored.
  - comments
    lines that start with # will be ignored.

  The file is assumed to be encoded in the UTF-8 format. Should you require a different encoding you can prefix the filename with `CHARSET:`, where CHARSET is replaced with the name of the encoding.

  Instead of a single variable file you can also specify a list of files separated by semicolons. The optional charset prefix must be specified for each file separately.

  Examples would be:

          -f varfile.txt
          --var-file=ISO-8859-3:varfile.txt
          --var-file=one.txt;two.txt
          --var-file=ISO-8859-3:one.txt;ISO-8859-1:two.txt

- -M or --list-media-types
  Prints out a lists of supported media types for the `--media-types` option and quits.