Synopsis

ceylon import-jar [--cacherep=<url>] [--cwd=<dir>] [--descriptor=<file>] [--dry-run] [--force] [--ignore-annotations] [--maven-overrides=<file>] [--missing-dependency-packages=<value>...] [--no-default-repositories] [--offline] [--out=<url>] [--overrides=<file>] [--pass=<secret>] [--rep=<url>...] [--show-classes] [--show-suggestions] [--sysrep=<url>] [--timeout=<seconds>] [--update-descriptor] [--user=<name>] [--verbose[=<flags>]] [--] <module> <jar-file> [<source-jar-file>]

Description

Imports the given <jar-file> using the module name and version given by <module> into the repository named by the --out option.

<module> is a module name and version separated with a slash, for example com.example.foobar/1.2.0.

<jar-file> is the name of the Jar file to import.

<source-jar-file> is an optional name of a Jar file containing the sources for the Jar file to import.

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)

--descriptor=file

Specify a module.xml or module.properties file to be used as the module descriptor

--dry-run

Performs all the sanity checks but does not publish the JAR.

--force

Skips sanity checks and forces publication of the JAR.

--ignore-annotations

Do not check annotations for imports (default: false).

--maven-overrides=file

Specifies the XML file to use to load Maven artifact overrides. See http://ceylon-lang.org/documentation/current/reference/repository/maven/ for information. Deprecated: use --overrides.

--missing-dependency-packages=value

Specifies which packages a missing dependency contains. Can be specified multiple times. Format: module-name/module-version=package-wildcard(,package-wildcard)*, where package-wildcard supports *, ** and ? wildcards.

--no-default-repositories

Indicates that the default repositories should not be used.

--offline, -L

Enables offline mode that will prevent connections to remote repositories.

--out=url, -o url

Specifies the output module repository (which must be publishable). (default: ./modules)

--overrides=file, -O file

Specifies the XML file to use to load module overrides. See http://ceylon-lang.org/documentation/current/reference/repository/maven/ for information. Experimental.

--pass=secret

Sets the password for use with an authenticated output repository (no default).

--rep=url

Specifies a module repository containing dependencies. Can be specified multiple times. (default: modules, ~/.ceylon/repo, https://modules.ceylon-lang.org/repo/1)

--show-classes

Shows all external classes that are not declared as imports instead of their packages only.

--show-suggestions

Shows suggestions for modules based on missing package names (this can take a long time).

--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).

--update-descriptor

Whenever possible will create or adjust the descriptor file with the necessary definitions.

--user=name

Sets the user name for use with an authenticated output repository (no default).

--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.

Descriptors

When the import-jar tool analyses the <jar-file> and complains about missing dependencies a module descriptor file should be provided. The name of this file can be provided using the --descriptor option or, when left out, the tool will look for <jar-file>.module.properties or <jar-file>.module.xml.

The format of these .properties or .xml files is documented online: http://www.ceylon-lang.org/documentation/1.1/reference/structure/module/#legacy_modules

If the option --update-descriptor is given the tool will try to update the given descriptor file with the available information (for now this only works for the .properties files). If the file didn't exist yet it will be created.

If the option --source-jar-file is given the tool will try to include the source jar into the module as well, including a SHA1 of that source jar.

Repositories

Repositories like those specified with the --rep or --out options can be file paths, HTTP urls to remote servers or can be names of repositories when prepended with a + symbol. These names refer to repositories defined in the configuration file or can be any of the following predefined names +SYSTEM, +CACHE, +LOCAL, +USER, +REMOTE or +MAVEN. For more information see https://ceylon-lang.org/documentation/1.3/reference/repository/tools