Format of files

Ceylon module archives (.car files) come with compiled-in metadata declaring their dependencies to other module versions. This metadata is understood by the Ceylon compiler, module runtime, and IDE. A Java .jar archive, on the other hand, does not include any native metadata describing dependencies of the .jar. Therefore, when importing a Java .jar into a Ceylon module repository, we must provide this metadata in a separate file, either:

  • a JBoss Modules module.xml descriptor, or
  • a Ceylon file.

The format of is extremely simple. Each line specifies the name and version of a dependency. For example:



  • to specify that a module is a shared dependency, a + is prepended to the module name, or
  • to specify that a module is an optional dependency, a ? is appended to the module name.

For example:


See also