ceylon --version
ceylon [--stacktraces] [--paginate] [--no-pager] [--show-home] [--cwd=<dir>] [--config=<file>] [--define=<key>=<value>...] [--distribution=<version-or-url>] [--] <command> [<command‑options...>] [<command‑args...>]


If --version is present, print version information and exit. Otherwise <tool-arguments> should begin with the name of a ceylon tool or a list of comma-separated tool names which will be invoked one after the other with the same remaining command line arguments. The named tools are loaded and configured with the remaining command line arguments and control passes to those tools.

  • bootstrap - Generates a Ceylon bootstrap script in the current directory

  • browse - Open module documentation in the browser

  • classpath - Prints a classpath suitable for passing to Java tools to run a given Ceylon module

  • compile - Compiles Ceylon and Java source code and directly produces module and source archives in a module repository.

  • compile-js - Compiles Ceylon source code to JavaScript and directly produces module and source archives in a module repository

  • config - Manages Ceylon configuration files

  • copy - Copies modules from one module repository to another

  • doc - Generates Ceylon API documentation from Ceylon source files

  • doc-tool - Generates documentation about a tool

  • help - Displays help information about other Ceylon tools

  • import-jar - Imports a jar file into a Ceylon module repository

  • info - Prints information about modules in repositories

  • jigsaw - Tools to interop with Java 9 (Jigsaw) modules

  • new - Generates a new Ceylon project

  • plugin - Manages Ceylon command-line plugins

  • run - Executes a Ceylon program

  • run-js - Executes a Ceylon program

  • src - Fetches source archives from a repository and extracts their contents into a source directory

  • test - Executes tests

  • test-js - Executes tests

  • version - Shows and updates version numbers in module descriptors

  • war - Generates a WAR file from a compiled .car file

See ceylon help <command> for more information about a particular subcommand.



Specifies the configuration file to use for this tool. (default: ./.ceylon/config)


Specifies the current working directory for this tool. (default: the directory where the tool is run from)

--define=key>=<value, -D key>=<value

Set a system property


Determines which Ceylon distribution will be used to run the command. Passing any version except the current (1.2.2) will result in a one-time download of the requested version from the official Ceylon website.


Do not pipe Ceylon tool output into a pager.


Pipe all Ceylon tool output into less (or if set, $CEYLON_PAGER or $PAGER) if standard output is a terminal. This overrides the help.pager and defaults.pager configuration options (see the "Configuration Mechanism" section below).


Outputs the value for CEYLON_HOME and exits.


If an error propagates to the top level tool, print its stack trace.

--version, -v

Print version information and exit, ignoring all other options and arguments.


Ceylon uses a simple text format to store customizations that are per repository and are per user. Such a configuration file may look like this:

# A '#' or ';' character indicates a comment.

; global settings
    encoding = utf8
    pager = false

; local repository
[repository "LOCAL"]
    url = ./modules

Various commands read from the configuration file and adjust their operation accordingly. See ceylon-config(1) for a list and more details about the configuration mechanism.