Module Natures
Note
This page is releated to the version 5 and lower of the SDK. If you use the SDK 6, please refer to the page Module Natures.
This page describes the most common module natures as follows:
Skeleton Name: the project skeleton name.
Build Type Name: the build type name, derived from the module nature name:
com.is2t.easyant.buildtypes#build-[NATURE_NAME]
.Documentation: a link to the documentation.
SDK Menu: the menu to the direct wizard in the SDK (if available). Any module nature can be created with the default wizard from File > New > Module Project.
Configuration: properties that can be defined to configure the module. Properties are defined inside the
ea:build
tag of the module.ivy file, usingea:property
tag as described in the section Build Options. A module nature also inherits the build options from the listed Natures Plugins.
Add-On Library
Skeleton Name: microej-javalib
Build Type Name: com.is2t.easyant.buildtypes#build-microej-javalib
Documentation: Libraries
SDK Menu: File > New > Add-On Library Project
Configuration:
This module nature inherits the build options of the following plugins:
Add-On Processor
Skeleton Name: addon-processor
Build Type Name: com.is2t.easyant.buildtypes#build-addon-processor
Configuration:
This module nature inherits the build options of the following plugins:
Foundation Library API
Skeleton Name: microej-javaapi
Build Type Name: com.is2t.easyant.buildtypes#build-microej-javaapi
Documentation: Libraries
Configuration:
This module nature inherits the build options of the following plugins:
This module nature defines the following dedicated build options:
Name |
Description |
Default |
---|---|---|
microej.lib.name |
Platform library name on the form: |
Not set |
rip.printableName |
Printable name for the Platform Editor. |
Not set |
Foundation Library Implementation
Skeleton Name: microej-javaimpl
Build Type Name: com.is2t.easyant.buildtypes#build-microej-javaimpl
Documentation: Libraries
Configuration:
This module nature inherits the build options of the following plugins:
This module nature defines the following dedicated build options:
Name |
Description |
Default |
---|---|---|
microej.lib.implfor |
Execution target. Possible values are emb (only on Device), sim (only Simulator) and common (both). |
|
Kernel Application
Skeleton Name: firmware-multiapp
Build Type Name: com.is2t.easyant.buildtypes#build-firmware-multiapp
Documentation: Kernel Developer Guide
Configuration:
This module nature inherits the build options of the following plugins:
This module nature defines the following dedicated build options:
Name |
Description |
Default |
---|---|---|
application.main.class |
Full Qualified Name of the main class of the kernel. This option is required. |
Not set |
runtime.api.name |
Name of the Runtime API of the kernel. This option is ignored when a Runtime API is declared in the dependencies. |
|
runtime.api.version |
Version of the Runtime API of the kernel. This option is ignored when a Runtime API is declared in the dependencies. |
|
skip.build.virtual.device |
When this property is set (any value), the virtual device is not built. |
Not set |
virtual.device.sim.only |
When this property is set (any value), the Executable is not built. |
Not set |
launch.properties.jvm |
Additional options to pass to the JVM for building the Executable. |
-Xmx1024M |
Meta Build
Skeleton Name: microej-meta-build
Build Type Name: com.is2t.easyant.buildtypes#microej-meta-build
Documentation: Meta Build
Configuration:
This module nature defines the following dedicated build options:
Name |
Description |
Default |
---|---|---|
metabuild.root |
Path of the root folder containing the modules to build. |
|
private.modules.file |
Name of the file listing the private modules to build. |
|
public.modules.file |
Name of the file listing the public modules to build. |
|
Mock
Skeleton Name: microej-mock
Build Type Name: com.is2t.easyant.buildtypes#build-microej-mock
Documentation: Mock
Configuration:
This module nature inherits the build options of the following plugins:
Module Repository
Skeleton Name: artifact-repository
Build Type Name: com.is2t.easyant.buildtypes#build-artifact-repository
Documentation: Module Repository
Configuration:
This module nature inherits the build options of the following plugins:
This module nature defines the following dedicated build options:
Name |
Description |
Default |
---|---|---|
architecture.configurations.includes [1] |
Comma-separated list of configurations to include for the Architecture modules.
Set |
|
bar.check.as.v2.module |
When this property is set to true, the artifact checker uses the MicroEJ Module Manager semantic. |
|
bar.javadoc.dir |
Path of the folder containing the generated javadoc. |
|
bar.notification.email.from |
The email address used as the from address when sending the notification emails. |
Not set |
bar.notification.email.host |
The hostname of the mail service used to send the notification emails. |
Not set |
bar.notification.email.password |
The password used to authenticate on the mail service. |
Not set |
bar.notification.email.port |
The port of the mail service used to send the notification emails |
Not set |
bar.notification.email.ssl |
When this property is set to true, SSL/TLS is used to send the notification emails. |
Not set |
bar.notification.email.to |
The notification email address destination. |
Not set |
bar.notification.email.user |
The username used to authenticate on the mail service. |
Not set |
bar.populate.from.resolver |
Name of the resolver used to fetch the modules to populate the repository. |
|
bar.populate.ivy.settings.file |
Path of the Ivy settings file used to fetch the modules to populate the repository. |
|
bar.populate.repository.conf |
Ivy configuration of included repositories. The modules of the repositories declared as dependency with this configuration are included in the built repository. |
|
bar.test.haltonerror |
When this property is set to true, the artifact checker stops at the first error. |
|
javadoc.excludes |
Comma-separated list of packages to exclude from the javadoc. |
Empty string |
javadoc.includes |
Comma-separated list of packages to include in the javadoc. |
|
javadoc.modules.excludes [2] |
Comma-separated list of modules to exclude from the javadoc. |
Empty string |
skip.artifact.checker |
When this property is set to true, all artifact checkers are skipped. |
Not set |
skip.email |
When this property is set (any value), the notification email is not sent.
Otherwise the |
Not set |
skip.javadoc |
Prevents the generation of the javadoc. |
|
skip.javadoc.deprecated |
Prevents the generation of any deprecated API at all in the javadoc. |
|
Runtime Environment
Skeleton Name: runtime-api
Build Type Name: com.is2t.easyant.buildtypes#build-runtime-api
Documentation: Runtime Environment
Configuration:
This module nature inherits the configuration properties of the following plugins:
Sandboxed Application
Skeleton Name: application
Build Type Name: com.is2t.easyant.buildtypes#build-application
Documentation: Sandboxed Application
SDK Menu: File > New > Sandboxed Application Project
Configuration:
This module nature inherits the build options of the following plugins:
Standalone Application
Skeleton Name: firmware-singleapp
Build Type Name: com.is2t.easyant.buildtypes#build-firmware-singleapp
Documentation: Standalone Application
SDK Menu: File > New > Standalone Application Project
Configuration:
This module nature inherits the build options of the following plugins:
This module nature defines the following dedicated build options:
Name |
Description |
Default |
---|---|---|
application.main.class |
Full Qualified Name of the main class of the application. This option is required. |
Not set |
skip.build.virtual.device |
When this property is set (any value), the virtual device is not built. |
Not set |
virtual.device.sim.only |
When this property is set (any value), the Executable is not built. |
Not set |
launch.properties.jvm |
Additional options to pass to the JVM for building the Executable. |
-Xmx1024M |
Require SDK version 5.5.0
or higher.
Studio Rebranding
Skeleton Name: microej-studio-rebrand
Build Type Name: com.is2t.easyant.buildtypes#build-izpack
Configuration:
The skeleton template contains all the necessary files for a Studio that is ready to build. The main elements are:
HOWTO.md: This file describes the minimum configuration required to build the Studio template as it is.
module.ivy: This file describes all available build options and dependencies.
branding-resources: This folder contains default resources that can be replaced with your own to customize the Studio. These resources include names, images, icons, and license files.
Natures Plugins
This page describes the most common module nature plugins as follows:
Documentation: link to documentation.
Module Natures: list of Module Natures using this plugin.
Configuration: properties that can be defined to configure the module. Properties are defined inside the
ea:build
tag of the module.ivy file, usingea:property
tag as described in the section Build Options.
Java Compilation
Module Natures:
This plugin is used by the following module natures:
Configuration:
This plugin defines the following build options:
Name |
Description |
Default |
---|---|---|
javac.debug.level |
Comma-separated list of levels for the Java compiler debug mode. |
|
javac.debug.mode |
When this property is set to true, the Java compiler is set in debug mode. |
|
src.main.java |
Path of the folder containing the Java sources. |
|
Platform Loader
Documentation: Select a VEE Port
Module Natures:
This plugin is used by the following module natures:
Configuration:
This plugin defines the following build options:
Name |
Description |
Default |
---|---|---|
platform-loader.platform.dir |
Path of the folder to unzip the loaded platform to. |
|
platform.loader.skip.load.platform |
When this property is set to true, the platform is not loaded. It must be already available in the directory defined by the property |
|
platform-loader.target.platform.conf |
The Ivy configuration used to retrieved the platform if fetched via dependencies. |
|
platform-loader.target.platform.dir |
Path of the root folder of the platform to use in the build. See Select a VEE Port section for Platform Selection rules. |
Not set |
platform-loader.target.platform.dropins |
Absolute or relative (to the project root folder) path of the folder where the platform can be found (see Select a VEE Port). |
|
platform-loader.target.platform.file |
Path of the platform file to use in the build. See Select a VEE Port section for Platform Selection rules. |
Not set |
Javadoc
Module Natures:
This plugin is used by the following module natures:
Configuration:
This plugin defines the following build options:
Name |
Description |
Default |
---|---|---|
src.main.java |
Path of the folder containing the Java sources. |
|
javadoc.file.encoding |
Encoding used for the generated Javadoc. |
|
javadoc.failonerror |
When this property is set to true, the build is stopped if an error is raised during the Javadoc generation. |
|
javadoc.failonwarning |
When this property is set to true, the build is stopped if a warning is raised during the Javadoc generation. |
|
target.reports |
Path of the base folder for reports. |
|
target.javadoc |
Path of the base folder where the Javadoc is generated. |
|
target.javadoc.main |
Path of the folder where the Javadoc is generated. |
|
javadoc-microej.overview.html |
Path of the HTML template file used for the Javadoc overview page. |
|
target.artifacts |
Path of the packaged artifacts. |
|
target.artifacts.main.javadoc.jar.name |
Name of the packaged JAR containing the generated Javadoc (stored in folder |
|
javadoc.publish.conf |
Ivy configuration used to publish the Javadoc artifact. |
|
Test Suite
Documentation: Test Suite with JUnit
Module Natures:
This plugin is used by the following module natures:
Configuration:
This plugin defines the following build options:
Name |
Description |
Default |
---|---|---|
microej.testsuite.cc.excludes.classes |
Pattern of classes excluded from the code coverage analysis. |
Not set |
microej.testsuite.retry.count |
A test execution may not be able to produce the success trace for an external reason, for example an unreliable harness script that may lose some trace characters or crop the end of the trace. For all these unlikely reasons, it is possible to configure the number of retries before a test is considered to have failed. |
|
microej.testsuite.timeout |
The time in seconds before a test is considered as failed. Set it to |
|
microej.testsuite.properties.[name] |
Inject an Application Option named |
Not applicable |
microej.testsuite.properties.launch.test.trace.file |
Set this property to |
Not set |
microej.testsuite.properties.s3.cc.activated |
When this property is set to true, the code coverage analysis is enabled. |
|
microej.testsuite.properties.testsuite.trace.ip |
The TCP/IP address to connect for retrieving test execution traces. This property is required if your VEE Port Run script does not redirect execution traces. |
Not set |
microej.testsuite.properties.testsuite.trace.port |
The TCP/IP port to connect for retrieving test execution traces. This property is required if your VEE Port Run script does not redirect execution traces. |
Not set |
microej.testsuite.properties.testsuite.trace.timeout |
The time in seconds without activity on the standard output before the trace analysis is stopped. |
|
cc.src.folders |
Path to the folders containing the Java sources used for code coverage analysis. |
Java source folder ( |
microej.testsuite.verbose |
When this property is set to true, the verbose trace level is enabled. |
|
test.run.excludes.pattern |
Pattern of classes excluded from the test suite execution. |
Empty string (no test) |
test.run.failonerror |
When this property is set to true, the build fails if an error is raised. |
|
target.vm.name |
The execution target ( |
|
test.run.includes.pattern |
Pattern of classes included in the test suite execution. |
|
skip.test |
When this property is set (any value), the tests are not executed. |
Not set |
Option cc.src.folders
is not set by default for SDK versions lower than 5.5.0
.
Java SE Unit Tests
Warning
This plugin is reserved for tools written in Java Standard Edition.
Tests classes must be created in the folder src/test/java
of the project.
See Test Suite section for MicroEJ tests.
Module Natures:
This plugin is used by the following module natures:
Configuration:
This plugin defines the following build options:
Name |
Description |
Default |
---|---|---|
test.run.excludes.pattern |
Pattern of classes excluded from the test suite execution. |
Empty string (no test) |
test.run.failonerror |
When this property is set to true, the build fails if an error is raised. |
|
test.run.includes.pattern |
Pattern of classes included in the test suite execution. |
|
skip.test |
When this property is set (any value), the tests are not executed. |
Not set |
Artifact Checker
Module Natures:
This plugin is used by the following module natures:
Configuration:
This plugin defines the following build options:
Name |
Description |
Default |
---|---|---|
run.artifact.checker |
When this property is set (any value), the artifact checker is executed. |
Not set |
skip.addonconf.checker |
When this property is set to true, the addon configurations checker is not executed. |
Not set |
skip.changelog.checker |
When this property is set to true, the changelog checker is not executed. |
Not set |
skip.foundationconf.checker |
When this property is set to true, the foundation configurations checker is not executed. |
Not set |
skip.license.checker |
When this property is set to true, the license checker is not executed. |
Not set |
skip.nullanalysis.checker [5] |
When this property is set to true, the null analysis checker is not executed. |
Not set |
skip.publicconf.checker |
When this property is set to true, the public configurations checker is not executed. |
Not set |
skip.readme.checker |
When this property is set to true, the readme checker is not executed. |
Not set |
skip.retrieve.checker |
When this property is set to true, the retrieve checker is not executed. |
Not set |
Require SDK version 5.5.0
or higher.
Global Build Options
The following Build Options are available in any module:
Name |
Description |
Default |
---|---|---|
|
Path of the build directory |
|