<ceylon-compile-js>
Ant task
Usage
Note: You must declare the tasks with a <typedef>
.
This task compiles Ceylon code to JavaScript, by means of the
ceylon-js
command-line tool.
The <ceylon-compile-js>
task is fairly similar to <ceylon-compile>
; the difference
lies mainly with some options that are specific to JavaScript code
generation.
To compile the module com.example.foo
whose source code is in the
src
directory to a module repository in the build
directory, with
verbose compiler messages:
<target name="compile" depends="ceylon-ant-taskdefs">
<ceylon-compile-js src="src" out="build" verbose="true">
<module name="com.example.foo"/>
</ceylon-compile-js>
</target>
Description
Compiles Ceylon source code to JavaScript and directly produces module and source archives in a module repository
The <ceylon-compile-js>
ant task wraps the ceylon compile-js
command.
Attributes
Attribute | Description | Required |
---|---|---|
cacheRep |
Equivalent to the |
No |
config |
Equivalent to the |
No |
cwd |
Equivalent to the |
No |
encoding |
Equivalent to the |
No |
errorProperty |
The ant property to set to true in the event of an error |
No |
executable |
The location of the ceylon executable script. |
No |
failOnError |
Whether an error in executing this task should fail the ant build |
No |
fork |
Whether the task should be run in a separate VM (default: |
No |
inheritAll |
Whether a task should inherit environment and properties. Only applies when |
No |
lexicalScopeStyle |
Equivalent to the |
No |
noDefaultRepositories |
Equivalent to the |
No |
noMtimeCheck |
When |
No |
offline |
Equivalent to the |
No |
out |
Equivalent to the |
No |
overrides |
Equivalent to the |
No |
pass |
Equivalent to the |
No |
resultProperty |
The ant property to set to the Ceylon program exit code |
No |
srcArchive |
The opposite of |
No |
stacktraces |
Equivalent to the |
No |
sysRep |
Equivalent to the |
No |
user |
Equivalent to the |
No |
verbose |
Equivalent to the |
No |
wrapModule |
The opposite of |
No |
Nested elements
<define>
A <define>
element is used to set system properties for the ant task being executed.
Equivalent to the --define
command line option.
Set a system property
The value for the system property can either be passed as a value
attribute:
<define key="org.example.helloworld.greeting" value="Hi"/>
or it can be the text between the begin and end tags:
<define key="org.example.helloworld.greeting">Hi</define>
Alternatively, it is posible to dispense with the attributes and use the syntax
<define>org.example.helloworld.greeting=Hi</define>
Element | Description | Required |
---|---|---|
key |
The property to be defined |
No |
value |
The value of the define |
No |
<files>
Ceylon files to be compiled`
<module>
A ceylon module to be compiled`
A <module>
element must specify a name, and may specify a version. If the relevant ceylon task don't require a version it will be ignored.
Element | Description | Required |
---|---|---|
name |
The module name. |
Yes |
version |
The module version. Whether this is required depends on the task |
No |
<moduleset>
Ceylon modules to be compiled`
A <moduleset>
containing a number of <sourcemodule>
s and/or <module>
subelements. It can be defined at the top level and then used by reference using the refid
attribute, so you don't have to repeat the same list of modules all the time.
Element | Description | Required |
---|---|---|
refid |
A reference to a |
No |
<rep>
A module repository containing dependencies. Can be specified multiple times. Defaults to <rep url="./modules"/>
.
Element | Description | Required |
---|---|---|
url |
The URL or path of the module repository. |
Yes, unless a `refid` is given |
refid |
A reference to a |
No |
<reposet>
A set of module repositories containing dependencies. Can be specified multiple times. Default to modules
.
A <reposet>
element contains a number of <repo>
and/or <reposet>
elements. It can be defined at the top level, and then used by reference using the refid
attribute so you don't have to repeat the same list of repositories all the time.
Element | Description | Required |
---|---|---|
refid |
A reference to a |
No |
<source>
A <source>
path, specifying a source path, for example:
<source>my/src/directory</source>
or
<source value="/src/directory"/>
Equivalent to the --src
command line option.
Path to source files. Can be specified multiple times; you can also specify several paths separated by your operating system's PATH
separator. (default: ./source
)
Element | Description | Required |
---|---|---|
value |
The source path. |
No |
<src>
Synonymous with <source>
Element | Description | Required |
---|---|---|
value |
The source path. |
No |
<suppressWarning>
Equivalent to the --suppress-warning
command line option.
Suppress the reporting of the given warnings. If no warnings
are given then suppresss the reporting of all warnings, otherwise just suppresss those which are present. Allowed flags include: filenameNonAscii
, filenameClaselessCollision
, deprecation
, compilerAnnotation
, doclink
, expressionTypeNothing
, unusedDeclaration
, unusedImport
, ceylonNamespace
, javaNamespace
, suppressedAlready
, suppressesNothing
.
Suppresses compiler warnings. Warnings can be suppressed by type, for example
<suppressWarning>filenameNonAscii</suppressWarning>
or eqiuvalently
<suppressWarning value="filenameNonAscii">
or all warnings can be suppressed by not naming any specific warnings:
<suppressWarning/>
Element | Description | Required |
---|---|---|
value |
The name of the warning(s) to be suppressed. |
No |