## Synopsis
`ceylon src [--cacherep=<url>] [--cwd=<dir>] [--define=<key>=<value>...] [--doc=<dirs>] [--maven-overrides=<url>] [--no-default-repositories] [--offline] [--rep=<url>...] [--resource=<dir>] [--resource-root=<folder-name>] [--script=<dir>] [--source=<dir>] [--src=<dir>] [--sysrep=<url>] [--timeout=<seconds>] [--verbose[=<flags>]] [--] <module...>`

## Description
Fetches any sources, resources, documentation and scripts that can be found for given `module` from the first configured repository to contain the module and extracts the them into their respective output directories. Multiple modules can be given. This tool is especially useful for working with example projects.

## Options
`--cacherep=url` | Specifies the folder to use for caching downloaded modules. (default: `~/.ceylon/cache`)
`--cwd=dir` | 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
`--doc=dirs` | The output doc directory (default: `./doc`)
`--maven-overrides=url` | Specifies the xml file to use to load Maven artifact overrides.
`--no-default-repositories` | Indicates that the default repositories should not be used.
`--offline`, `-L` | Enables offline mode that will prevent connections to remote repositories.
`--rep=url` | Specifies a module repository containing dependencies. Can be specified multiple times. (default: `modules`, `~/.ceylon/repo`, `http://modules.ceylon-lang.org/repo/1`)
`--resource=dir`, `-r dir` | The output resource directory (default: `./resource`)
`--resource-root=folder-name`, `-R folder-name` | Sets the special resource folder name whose files will end up in the root of the resulting module CAR file (default: ROOT).
`--script=dir`, `-x dir` | The output script directory (default: `./script`)
`--source=dir` | An alias for `--src` (default: `./source`)
`--src=dir`, `-s dir` | The output source directory (default: `./source`)
`--sysrep=url` | Specifies the system repository containing essential modules. (default: `$CEYLON_HOME/repo`)
`--timeout=seconds`, `-T seconds` | Sets the timeout for connections to remote repositories, use 0 for no timeout (default: 20).
`--verbose[=flags]`, `-d` | Produce verbose output. If no `flags` are given then be verbose about everything, otherwise just be verbose about the flags which are present. Allowed flags include: `all`, `loader`.

## Examples
A typical workflow might be:
    mkdir my-project
    cd my-project
    ceylon src org.example.foo
    ceylon compile org.example.foo
    ceylon run org.example.foo