MicroEJ Developer
  • Discover MicroEJ
  • VEE
  • SDK
  • Supported Hardware
Get Started
  • Glossary
  • Overview
    • Getting Started
    • MICROEJ VEE
    • MICROEJ SDK
  • SDK User Guide
    • Installation
      • Install Latest SDK Distribution
        • Download SDK Distribution
        • Check JDK Version
        • Install SDK Distribution
      • Update SDK Version
      • Install Other SDK Distributions
        • Install Portable SDK Distribution
        • Install SDK Distribution 21.11
      • System Requirements
        • Get JDK
      • Troubleshooting
        • Incompatible Default Java Version
        • Windows Specifics
        • Linux Specifics
        • MacOS Specifics
    • Licenses
      • SDK EULA
      • License Manager Overview
      • License Check
      • Evaluation Licenses
        • Get your Machine UID
        • Request your Activation Key
        • Install the License Key
        • Troubleshooting
      • Production Licenses
        • Request your Activation Key
        • Activate your USB Dongle
        • Check Activation on SDK
        • USB Dongle on GNU/Linux
        • USB Dongle with Docker on Linux
        • Troubleshooting
        • Remote USB Dongle Connection
    • Module Repositories
      • Central Repository
        • Use
        • Licensing
        • Changelog
        • Javadoc
      • Developer Repository
        • Use
        • Licensing
        • Changelog
        • Javadoc
        • Community
      • Content Organization
    • GitHub Repositories
      • Repository Import
      • MicroEJ GitHub Badges
    • IDE
      • Startup
      • Resolve Dependencies in Workspace
      • Resolve Foundation Libraries in Workspace
      • Resolve Front Panel in Workspace
    • SDK Version
    • MicroEJ Module Manager
      • Introduction
      • Specification
      • Module Project Skeleton
      • Module Description File
        • Enable MMM Semantic
        • Module Dependencies
        • Build Options
        • Automatic Update Before Resolution
      • SDK Configuration
        • Preferences Page
        • Settings File
        • Options
        • Resolution Logs
      • Module Build
      • Build Kit
      • Command Line Interface
        • Usage
        • Shared configuration
        • Commands
      • Build System Options
      • Meta Build
        • Meta Build creation
        • Meta Build configuration
      • Troubleshooting
        • Unresolved Dependency
        • Invalid Certificate
        • Target “simulator:run” does not exist
      • Former SDK Versions (lower than 5.2.0)
        • New MicroEJ Module Project
        • Preferences Pages
        • Build Kit
      • Former SDK Versions (from 5.2.0 to 5.3.x)
        • Build Kit
    • Release Notes
    • SDK Distribution Changelog
      • [23.02] - 2022-02-28
      • [22.06] - 2022-06-29
      • [21.11] - 2021-11-15
      • [21.03] - 2021-03-25
      • [20.12] - 2020-12-11
      • [20.10] - 2020-10-30
      • [20.07] - 2020-07-28
      • [19.05] - 2019-05-17
      • [19.02] - 2019-02-22
    • SDK Changelog
      • [5.7.0] - 2023-02-27
        • General
        • MicroEJ Module Manager
      • [5.6.2] - 2022-08-31
        • General
        • MicroEJ Module Manager
      • [5.6.1] - 2022-07-08
        • General
      • [5.6.0] - 2022-06-29
        • General
        • MicroEJ Module Manager
      • [5.5.3] - 2022-05-03
        • MicroEJ Module Manager
      • [5.5.2] - 2021-12-22
        • General
        • MicroEJ Module Manager
      • [5.5.1] - 2021-12-02
        • General
      • [5.5.0] - 2021-11-15
        • General
        • MicroEJ Module Manager
      • [5.4.1] - 2021-04-16
        • MicroEJ Module Manager
      • [5.4.0] - 2021-03-25
        • Known Issues
        • General
        • MicroEJ Module Manager
      • [5.3.1] - 2020-12-11
        • General
        • MicroEJ Module Manager
      • [5.3.0] - 2020-10-30
        • Known Issues
        • General
        • MicroEJ Module Manager
      • [5.2.0] - 2020-07-28
        • General
        • MicroEJ Module Manager
        • Misc
      • [5.1.2] - 2020-03-09
        • MicroEJ Module Manager
      • [5.1.1] - 2019-09-26
        • General
      • [5.1.0] - 2019-05-17
        • General
        • MicroEJ Module Manager
      • [5.0.1] - 2019-02-14
        • General
        • MicroEJ Module Manager
    • Migration Notes
      • From 5.2.x to 5.3.x or more
        • Workspace migration warning
      • From 5.1.x to 5.2.x
        • Enable New Wizards Shortcuts in MicroEJ Perspective
        • Re-enable the Ivy Preferences Pages (Advanced Use)
      • From 4.1.x to 5.x
        • Wadapps Application Update
        • MicroEJ Module Manager Update
        • Meta build Project Update
  • Application Developer Guide
    • Introduction
    • Standalone Application
      • Platform Import
        • Source Platform Import
        • Binary Platform Import
      • Build and Run an Application
        • Create a MicroEJ Standalone Application
        • Run on the Simulator
        • Run on the Device
      • Build Output Files
        • Launch Output Folder
        • Published Module Files
        • The SOAR Map File
        • The SOAR Information File
      • MicroEJ Launch
        • Main Tab
        • Execution Tab
        • Configuration Tab
        • JRE Tab
        • Source Tab
        • Common Tab
      • Application Options
        • Introduction
        • Defining an Option
        • Category: Runtime
        • Category: Simulator
        • Category: Libraries
        • Category: Device
        • Category: Feature
      • SOAR
        • Java Symbols Encoding
        • Class Initialization Code
        • Method Devirtualization
        • Method Inlining
    • Sandboxed Application
      • Create a First Application
        • Entry Point
        • Configuration
        • SSL Certificate
        • Module Descriptor
      • Run on the Simulator
        • From the SDK
        • From the Command Line Interface
      • Run on the Device
        • Local Deployment
        • Remote Deployment
      • Fundamental Concepts
      • Shared Interfaces
        • Principle
        • Shared Interface Creation
    • MicroEJ Libraries
    • Virtual Device
    • MicroEJ Runtime
      • Language
      • Core Libraries
        • Embedded Device Configuration (EDC)
        • Beyond Profile (BON)
        • Simple Native Interface (SNI)
        • Kernel & Features (KF)
      • Scheduler
      • Garbage Collector
    • Module Natures
      • Add-On Library
      • Add-On Processor
      • Foundation Library API
      • Foundation Library Implementation
      • Kernel Application
      • Meta Build
      • Mock
      • Module Repository
      • Runtime Environment
      • Sandboxed Application
      • Standalone Application
      • Natures Plugins
        • Java Compilation
        • Platform Loader
        • Javadoc
        • Test Suite
        • J2SE Unit Tests
        • Artifact Checker
      • Global Build Options
    • Module Repository
      • Create a Repository Project
      • Configure Resolver for Input Modules
      • Configure Consistency Check
      • Advanced Options
      • Include Modules
        • Include a Single Module
        • Include a Module Repository
      • Generate Javadoc
      • Build the Repository
      • Use the Offline Repository
    • MicroEJ Classpath
      • Application Classpath
      • Classpath Load Model
      • Classpath Elements
        • Application Entry Points
        • Types
        • Resources
        • Immutable Objects
        • System Properties
        • Constants
    • Application Resources
    • Native Language Support
      • Introduction
      • Localization Source Files
      • NLS List Files
      • Usage
        • Dealing With Missing Translations
      • BinaryNLS Resource Generation
      • NLS External Loader
        • Installation
        • Usage
        • Troubleshooting
        • Crowdin
    • Debug an Application
      • Add-On Library Sources
      • Foundation Library Sources
    • Platform Selection
    • Development Tools
      • Test Suite with JUnit
        • Principle
        • JUnit Compliance
        • Setup a Platform for Tests
        • Setup a Project with a JUnit Test Case
        • Build and Run a JUnit Test Suite
        • Test Suite Reports
        • Advanced Configurations
      • Stack Trace Reader
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use (Standalone Application)
        • Use (Sandboxed Application)
        • Stack Trace Reader Options
      • Code Coverage Analyzer
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
      • Heap Usage Monitoring
        • Introduction
        • Heap Usage Introspection
        • Automatic Heap Usage Monitoring
        • Heap Usage Analysis
      • Heap Dumper & Heap Analyzer
        • Introduction
        • Heap Dumper
        • Heap Viewer
        • Progressive Heap Usage
        • Compare Heap Dumps
      • Serial to Socket Transmitter
        • Principle
        • Installation
        • Use
      • Memory Map Analyzer
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
      • Event Tracing
        • Description
        • Event Recording
        • Java API Usage
        • Platform Implementation
        • Advanced Event Tracing
      • Null Analysis
        • Principle
        • Java Code Annotation
        • Module Project Configuration
        • MicroEJ Libraries
        • Advanced Use
        • Troubleshooting
      • Dependency Discoverer
        • Introduction
        • Installation
        • Use
    • Advanced Tools
      • MicroEJ Linker
        • Overview
        • ELF Overview
        • Linking Process
        • Linker Specific Configuration File Specification
        • Auto-generated Sections
        • Execution
        • Error Messages
        • Map File Interpretor
      • MicroEJ Test Suite Engine
        • Introduction
        • Using the MicroEJ Test Suite Ant Tasks
        • Using the Trace Analyzer
        • Appendix
    • Graphical User Interface
      • MicroUI
        • Introduction
        • Images
        • Fonts
        • Font Designer
        • Application Options
        • Debug Traces
        • Error Messages
        • Migration Guide
      • MicroVG
        • Introduction
        • Path
        • Matrix
        • Linear Gradient
        • Vector Fonts
        • Vector Images
        • Android Vector Drawable Loader
      • MWT (Micro Widget Toolkit)
        • Introduction
        • Concepts
        • How to Create a Widget
        • How to Create a Container
        • How to Animate a Widget
        • How to Define an Outline or Border
        • How to Define a Background
        • How to Create a Desktop Event Dispatcher
        • How to Define an Extra Style Field
        • How to Use the Overlap Render Policy
        • How to Debug
      • Widgets and Examples
        • Widget Library
        • Widget Demo
        • MWT Examples
      • Advanced
        • How to Detect Text Overflow
    • JavaScript
      • Getting Started
      • Sources Management
        • JavaScript Sources Location
        • JavaScript Sources Load Order
        • JavaScript Sources Load Scope
        • JavaScript Sources Processing
      • Examples
        • Simple Application
        • Use a Java API in JavaScript
        • Create a JavaScript API from Java
      • API
        • Built-in Objects
        • Host Objects
      • Communication Between Java and JS
        • JavaScript Engine
        • Calling Java from JavaScript
        • Calling JavaScript from Java
        • Passing Values Between JavaScript and Java
      • Tests
      • Limitations
        • Unsupported Directives
        • Unsupported Statements
        • Unsupported Built-in Objects
      • Troubleshooting
        • Compilation error cannot be resolved to a type in FFI class
      • Internals
        • JavaScript Sources Processing
        • Foreign Function Interface
    • Networking
      • Foundation Libraries
      • Add-On Libraries
        • IoT Libraries
        • Data Serialization Libraries
        • Cloud Agent Libraries
    • Character Encoding
      • Default Encoding
      • UTF-8 Encoding
      • Custom Encoding
      • Console Output
        • Set Encoding in MicroEJ SDK Console
    • Limitations
  • VEE Porting Guide
    • Introduction
      • Scope
      • Intended Audience
    • MicroEJ Platform
      • Introduction
      • Build Process
      • Concepts
        • MicroEJ Platform Configuration
        • Modules
        • Low Level API Pattern
    • MicroEJ Architecture
      • Naming Convention
      • MicroEJ Architectures Changelog
        • Notation
        • [7.18.1] - 2022-10-26
        • [7.18.0] - 2022-09-14
        • [7.17.0] - 2022-06-13
        • [7.16.0] - 2021-06-24
        • [7.15.1] - 2021-02-19
        • [7.15.0] - 2020-12-17
        • [7.14.1] - 2020-11-30
        • [7.14.0] - 2020-09-25
        • [7.13.3] - 2020-09-18
        • [7.13.2] - 2020-08-14
        • [7.13.1] - 2020-07-20
        • [7.13.0] - 2020-07-03
        • [7.12.0] - 2019-10-16
        • [7.11.0] - 2019-06-24
        • [7.10.1] - 2019-04-03
        • [7.10.0] - 2019-03-29
        • [7.9.1] - 2019-01-08
        • [7.9.0] - 2018-09-20
        • [7.8.0] - 2018-08-01
        • [7.7.0] - 2018-07-19
        • [7.6.0] - 2018-06-29
        • [7.5.0] - 2018-06-15
        • [7.4.0] - 2018-06-13
        • [7.3.0] - 2018-03-07
        • [7.2.0] - 2018-03-02
        • [7.1.2] - 2018-02-02
        • [maintenance/6.18.0] - 2017-12-15
        • [7.1.1] - 2017-12-08
        • [7.1.0] - 2017-12-08
        • [7.0.0] - 2017-11-07
        • [6.17.2] - 2017-10-26
        • [6.17.1] - 2017-10-25
        • [6.17.0] - 2017-10-10
        • [6.16.0] - 2017-09-27
        • [6.15.0] - 2017-09-12
        • [6.14.2] - 2017-08-24
        • [6.14.1] - 2017-08-02
        • [6.13.0] - 2017-07-21
        • [6.12.0] - 2017-07-07
        • [6.11.0] - 2017-06-13
        • [6.11.0-beta1] - 2017-06-02
        • [6.10.0] - 2017-06-02
        • [6.9.2] - 2017-06-02
        • [6.9.1] - 2017-05-29
        • [6.9.0] - 2017-03-15
    • MicroEJ Packs
      • Overview
      • Naming Convention
        • Architecture Specific Pack
        • Generic Pack
    • Platform Creation
      • Architecture Selection
      • Platform Configuration
      • Pack Import
      • Platform Build
      • Platform Module Configuration
      • Platform Customization
      • Platform Publication
      • BSP Connection
        • Principle
        • Options
        • Build Script File
        • Run Script File
    • Platform Qualification
      • Introduction
      • Platform Qualification Tools Overview
      • Platform Test Suite
      • Test Suite Versioning
        • Core Engine
        • UI Pack
        • FS Pack
        • BLUETOOTH Pack
        • NET Pack
    • MicroEJ Core Engine
      • Functional Description
      • Architecture
      • Capabilities
      • Implementation
        • Initialization
        • Scheduling
        • Idle Mode
        • Time
        • Error Codes
        • Example
        • Dump the States of the Core Engine
        • Check Internal Structure Integrity
      • Generic Output
      • Link
      • Dependencies
      • Installation
      • Abstraction Layer
      • Memory Considerations
      • Use
    • Advanced Event Tracing
      • Principle
      • Platforms using GNU LD linker
      • Platforms using IAR ILINK linker
    • Multi-Sandbox
      • Principle
      • Functional Description
      • Memory Considerations
      • Dependencies
      • Installation
      • Use
    • Tiny-Sandbox
      • Principle
      • Installation
      • Limitations
    • Native Interface Mechanisms
      • Simple Native Interface (SNI)
        • Principle
        • Functional Description
        • Example
        • Synchronization
        • Dependencies
        • Installation
        • Use
      • Shielded Plug (SP)
        • Principle
        • Functional Description
        • Shielded Plug Compiler
        • Example
        • Dependencies
        • Installation
        • Use
      • MicroEJ Java H
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
    • External Resources Loader
      • Functional Description
      • Implementations
        • Open a Resource
        • Resource Identifier
        • Resource Offset
        • Resource Inside the CPU Address Space Range
      • External Resources Folder
      • Dependencies
      • Installation
      • Use
    • Serial Communications
      • ECOM
        • Principle
        • Functional Description
        • Device Management API
        • Dependencies
        • Installation
        • Use
      • ECOM Comm
        • Principle
        • Functional Description
        • Component Architecture
        • Comm Port Identifier
        • Dynamic Connections
        • Java API
        • Driver API
        • BSP File
        • XML File
        • ECOM Comm Mock
        • Dependencies
        • Installation
        • Use
    • Graphical User Interface
      • Principle
      • MicroUI
        • Principle
        • Architecture
        • Thread
        • Native Calls
        • Transparency
        • Installation
        • Use
      • Static Initialization
        • Principle
        • Functional Description
        • XML File
        • XML File Example
        • Dependencies
        • Installation
        • Use
      • Low Level API
        • Principle
        • Embedded Platform
        • Simulator
      • LED
        • Principle
        • Functional Description
        • Low Level API
        • Typical Implementation
        • Dependencies
        • Installation
        • Use
      • Input
        • Principle
        • Functional Description
        • Driver Listener
        • Static Initialization
        • Standard Event Generators
        • Generic Event Generators
        • Low Level API
        • Typical Implementation
        • Event Buffer
        • Dependencies
        • Installation
        • Use
      • Display
        • Principle
        • Functional Description
        • Display Configurations
        • Buffer Modes
        • Partial Buffer
        • Byte Layout
        • Memory Layout
        • Pixel Structure
        • Low Level API
        • Typical Implementations
        • Drawing Native
        • Display Synchronization
        • GPU Synchronization
        • Antialiasing
        • CLUT
        • Image Pixel Conversion
        • Library ej.api.Drawing
        • Dependencies
        • Installation
        • Use
      • Images
        • Overview
        • Image Format
        • Image Generator
        • Image Loader
        • Image Renderer
      • Fonts
        • Overview
        • Font Characteristics
        • Font Generator
        • Font Renderer
      • Simulation
        • Principle
        • Module Dependencies
        • MicroUI Implementation
        • Widget Display
        • Custom Drawings
        • New Drawings
        • Inputs Extensions
        • Heap Simulation
        • Image Decoders
        • Dependencies
        • Installation
        • Use
      • Release Notes
        • MicroEJ Architecture Compatibility Version
        • Foundation Libraries
        • Abstraction Layer Interface
        • Front Panel API
        • Image Generator API
        • C Modules
      • Changelog
        • 13.4.1 (2023-02-06)
        • 13.4.0 - 2022-12-13
        • 13.3.1 - 2022-09-09
        • 13.3.0 - 2022-09-02
        • 13.2.0 - 2022-05-05
        • [13.1.0] - 2021-08-03
        • [13.0.7] - 2021-07-30
        • [13.0.6] - 2021-03-29
        • [13.0.5] - 2021-03-08
        • [13.0.4] - 2021-01-15
        • [13.0.3] - 2020-12-03
        • [13.0.2] - 2020-10-02
        • [13.0.1] - 2020-09-22
        • [13.0.0] - 2020-07-30
        • [12.1.5] - 2020-10-02
        • [12.1.4] - 2020-03-10
        • [12.1.3] - 2020-02-24
        • [12.1.2] - 2019-12-09
        • [12.1.1] - 2019-10-29
        • [(maint) 8.0.0] - 2019-10-18
        • [12.1.0] - 2019-10-16
        • [12.0.2] - 2019-09-23
        • [12.0.1] - 2019-07-25
        • [12.0.0] - 2019-06-24
        • [11.2.0] - 2019-02-01
        • [11.1.2] - 2018-08-10
        • [11.1.1] - 2018-08-02
        • [11.1.0] - 2018-07-27
        • [11.0.1] - 2018-06-05
        • [10.0.2] - 2018-02-15
        • [11.0.0] - 2018-02-02
        • [10.0.1] - 2018-01-03
        • [10.0.0] - 2017-12-22
        • [9.4.1] - 2017-11-24
        • [9.4.0] - 2017-11-23
        • [9.3.1] - 2017-09-28
        • [9.3.0] - 2017-08-24
        • [9.2.1] - 2017-08-14
        • [9.2.0] - 2017-07-21
        • [9.0.2] - 2017-04-21
        • [9.1.2] - 2017-03-16
        • [9.0.1] - 2017-03-13
        • [9.1.1] - 2017-02-14
        • [9.1.0] - 2017-02-13
        • [9.0.0] - 2017-02-02
        • [8.1.0] - 2016-12-24
        • [8.0.0] - 2016-11-17
        • [7.4.7] - 2016-06-14
        • [7.4.2] - 2016-05-25
        • [7.4.1] - 2016-05-10
        • [7.4.0] - 2016-04-29
        • [7.3.0] - 2016-04-25
        • [7.2.1] - 2016-04-18
        • [7.2.0] - 2016-04-05
        • [7.1.0] - 2016-03-02
        • [7.0.0] - 2016-01-20
        • [6.0.1] - 2015-12-17
        • [6.0.0] - 2015-11-12
      • Migration Guide
        • From 13.3.x to 13.4.x
        • From 13.2.x to 13.3.x
        • From 13.1.x to 13.2.x
        • From 13.0.x to 13.1.x
        • From 12.x to 13.x
        • From 11.x to 12.x
        • From 10.x to 11.x
        • From 9.x to 10.x
        • From 8.x to 9.x
        • From 7.x to 8.x
    • Vector Graphics
      • Principle
      • MicroVG
        • Principle
        • Architecture
        • Native Calls
        • Installation
        • Use
      • Low-Level API
        • Principle
        • Embedded Platform
        • Simulator
      • Matrix
        • Principle
        • Functional Description
        • Low-Level API
        • Use
      • Path
        • Principle
        • Functional Description
        • Low-Level API
        • Use
      • Gradient
        • Principle
        • Functional Description
        • Low-Level API
        • Use
      • Font
        • Principle
        • Functional Description
        • Low-Level API
        • Use
      • C Modules
        • Principle
        • UI Pack
        • C Module: MicroUI
        • C Module: MicroUI Over VGLite
        • Library: Vivante VGLite
        • VG Pack
        • C Module: MicroVG
        • Library: Freetype
        • Library: Harfbuzz
        • C Module: MicroVG Over VGLite
        • Compatibility
      • Simulation
        • Principle
        • Installation
        • Use
      • Release Notes
        • UI Pack Compatibility Version
        • Foundation Libraries
        • C Modules Compatibility Version
      • Changelog
        • [1.2.1] - 2023-02-06
        • [1.2.0] - 2022-12-30
        • [1.1.0] - 2022-09-05
        • [1.0.1] - 2022-05-16
        • [1.0.0] - 2022-05-13
    • Networking
      • Principle
      • Network Core Engine
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
      • SSL
        • Principle
        • Functional Description
        • Dependencies
        • Installation
        • Use
    • File System
      • Principle
      • Functional Description
      • Dependencies
      • Installation
        • Properties File Template
      • Use
    • Hardware Abstraction Layer
      • Principle
      • Functional Description
      • Identifier
        • Basic Rule
        • Generic Rules
      • Configuration
      • Dependencies
      • Installation
      • Use
    • Device Information
      • Principle
      • Dependencies
      • Installation
      • Use
    • Watchdog Timer
      • Overview
      • Principle
      • Mock Implementation
      • Dependencies
      • Installation
      • Use in an Application
      • Code example in Java
      • Use in C inside the BSP
      • Code example in C
    • SystemView
      • Principle
      • References
      • Installation
      • MicroEJ Core Engine OS Task
      • OS Tasks and Java Threads Names
      • OS Tasks and Java Threads Priorities
      • Use
      • Troubleshooting
        • SystemView doesn’t see any activity in MicroEJ Tasks
        • OVERFLOW Events in SystemView
        • RTT Control Block Not Found
      • RTT block found by SystemView but no traces displayed
      • Bus hardfault when running SystemView without Java Virtual Machine (JVM)
      • SystemView for STM32 ST-Link Probe
    • Simulation
      • Principle
      • Functional Description
      • Dependencies
      • Installation
      • Use
      • Mock
        • Principle
        • Functional Description
        • Example
        • Mocks Design Support
        • Dependencies
        • Installation
        • Use
        • JavaFX
      • Shielded Plug Mock
        • General Architecture
        • Configuration
      • Front Panel Mock
        • Principle
        • Functional Description
        • The Front Panel Project
        • Module Dependencies
        • Front Panel File
        • Widget
        • Installation
        • Use
      • Bluetooth LE Mock
        • Overview
        • Requirements
        • Usage
        • Troubleshooting
    • Appendices
      • Low Level API
        • LLMJVM: MicroEJ Core Engine
        • LLKERNEL: Multi-Sandbox
        • LLSP: Shielded Plug
        • LLEXT_RES: External Resources Loader
        • LLCOMM: Serial Communications
        • LLUI_INPUT: Input
        • LLUI_DISPLAY: Display
        • LLUI_LED: LEDs
        • LLVG: VectorGraphics
        • LLVG_MATRIX: Matrix
        • LLVG_PATH: Vector Path
        • LLVG_GRADIENT: Vector Linear Gradient
        • LLVG_FONT: Vector Font
        • LLNET: Network
        • LLNET_SSL: SSL
        • LLFS: File System
        • LLHAL: Hardware Abstraction Layer
        • LLDEVICE: Device Information
        • LLWATCHDOG_TIMER: Watchdog Timer
        • LLSEC: Security
      • MicroEJ Foundation Libraries
        • EDC
        • SNI
        • KF
        • ECOM
        • ECOM Comm
        • FS
        • Net
        • SSL
      • Tools Options and Error Codes
        • SOAR
        • Immutable Files Related Error Messages
        • SNI
        • SP Compiler
        • NLS Immutables Creator
        • MicroUI Static Initializer
        • Front Panel
        • HIL Engine
        • Heap Dumping
      • Architectures MCU / Compiler
        • Principle
        • Supported MicroEJ Core Engine Capabilities by Architecture Matrix
        • ARM Cortex-M0
        • ARM Cortex-M4
        • ARM Cortex-M7
        • ESP32
        • IAR Linker Specific Options
        • GNU LD Specific Options
      • Former Platform Migration
        • Create an Architecture Repository
        • Import the Former Platform Sources
        • Install the Platform Configuration Additions
        • Update the Front Panel Configuration
        • Configure the BSP Connection
        • Add the Build and Run Scripts
        • Use the Platform in Module Projects
        • Going further
  • Kernel Developer Guide
    • Overview
      • Introduction
      • Terms and Definitions
      • Overall Architecture
      • Multi-Sandbox Build Flow
        • Firmware Build Flow
        • Virtual Device Build Flow
      • Firmware Implementation Libraries
    • Kernel & Features Specification
    • Getting Started
      • Online Getting Started
      • MicroEJ Demo VEE Flavors
        • What is a MicroEJ Demo Runtime Environment?
        • What is a MicroEJ Demo Flavor?
    • Kernel Creation
      • Create a new Project
      • Configure a Platform
      • Build the Firmware and Virtual Device
      • Define APIs
      • Add System Applications
      • Build Firmware using Meta Build
      • Build Firmware using MicroEJ Launches
      • Advanced
        • MicroEJ Firmware module.ivy
        • Build only a Firmware
        • Build only a Virtual Device
        • Build only a Virtual Device with a pre-existing Firmware
    • Kernel APIs
      • Kernel API Definition
      • Writing Kernel APIs
        • Default Kernel APIs Derivation
        • Kernel API Generator
    • Runtime Environment
      • Principle
      • Create a new Runtime Environment Module
        • Kernel APIs as Dependencies
        • Kernel APIs as Project File
        • Add Add-On Processors
      • Use a Runtime Environment in an Application
      • Extend a Runtime Environment
    • Kernel UID
    • Sandboxed Application Lifecycle
    • Communication between Features
      • Kernel Types Converter
    • Multi-Sandbox Enabled Libraries
      • MicroUI
        • Physical Display Ownership
        • Automatically Reclaimed Resources
      • BON
        • Kernel Timer
        • Automatically Reclaimed Resources
      • ECOM
      • ECOM-COMM
      • FS
      • NET
      • SSL
    • Setup a KF Test Suite
      • Enable the Test Suite
      • Add a KF Test
      • KF Test Suite Options
    • Kernel Linking
      • Link Flow
      • Kernel Metadata Generation
      • Firmware Linker
      • Feature Portability Control
        • Principle
        • Enable
        • Portability Rules
    • Application Linking
      • SOAR Build Phases
      • Feature Build Off Board
      • Feature Build On Device
        • General Workflow
        • Implement the Kernel
      • FSO Compatibility
      • Feature Portability
  • Tutorials
    • Understand How to Build a Firmware and its Dependencies
      • The Components
        • Architecture
        • Platform Sources
        • Application
        • C Toolchain (GCC, KEIL, IAR, …)
        • Module Repository
        • Dependencies Between Components
      • How to Build
        • Build a Platform
        • Build a Firmware
        • Dependencies Between Processes
    • Create a MicroEJ Platform for a Custom Device
      • Introduction
      • A MicroEJ Platform Project is already available for the same MCU/RTOS/C Compiler
        • Platform
        • BSP
        • Simulator
      • A MicroEJ Platform Project is not available for the same MCU/RTOS/C Compiler
        • MCU
        • RTOS
        • C Compiler
      • Platform Validation
      • Further Assistance Needed
    • Create a MicroEJ Firmware From Scratch
      • Intended Audience
      • Introduction
      • Prerequisites
      • Overview
      • Setup the Development Environment
      • Get Running BSP
      • FreeRTOS Hello World
      • Create a MicroEJ Platform
        • Import the MicroEJ Architecture
        • Install an Evaluation License
        • Create the MicroEJ Platform
        • Setup the MicroEJ Platform
      • Create MicroEJ Application HelloWorld
      • Configure BSP Connection in MicroEJ Application
      • MicroEJ and FreeRTOS Integration
        • Minimal Low Level APIs
        • Invoke MicroEJ Core Engine
        • Build and Link the Firmware with the MicroEJ Runtime and MicroEJ Application
    • Create MicroEJ Platform Build and Run Scripts
      • Intended Audience
      • Prerequisites
      • Introduction
      • Overview
      • Create Build and Run Scripts
        • Create build.sh and run.sh Scripts
        • Create build.bat and run.bat Scripts
      • Use Build Script in MicroEJ SDK
        • Build Firmware from MicroEJ SDK
        • Convert from partial BSP connection to full BSP connection (optional)
      • Going Further
    • Setup an Automated Build using Jenkins and Artifactory
      • Intended Audience
      • Introduction
      • Prerequisites
      • Overview
      • Install the Build Tools
      • Get a Module Repository
      • Setup Artifactory
        • Install and Start Artifactory
        • Configure Artifactory
        • Create Repositories
        • Import MicroEJ Repositories
      • Setup Jenkins
        • Install Jenkins
        • Configure Jenkins
        • Create a Job Template
      • Build a new Module using Jenkins
        • Create a new MicroEJ Module
        • Create a New Jenkins Job
        • Build the “Hello World” Application
      • Appendix
        • Customize Jenkins
        • Customize target~ path
    • Improve the Quality of Java Code
      • Intended Audience
      • Readable Code
        • Naming Convention
        • Visibility
        • Javadoc
        • Code Convention
        • Code Style and Formatting
      • Best Practices
        • Common Pitfalls
        • Simplify Maintenance
        • Basic Optimizations
        • Local Extraction
        • Equals and Hashcode
      • Related Tools
        • Unit Testing
        • Code Analysis with SonarQube™
    • Optimize the Memory Footprint of an Application
      • Intended Audience
      • Introduction
      • How to Analyze the Footprint of an Application
        • How to Analyze the Files Generated by the MicroEJ Linker
        • How to Analyze a Map File Generated by a Third-Party Linker
      • How to Reduce the Image Size of an Application
        • Application Resources
        • Application Code
        • MicroEJ Platform Configuration
        • Application Configuration
        • Stripping Class Names from an Application
      • How to Reduce the Runtime Size of an Application
        • Application Code
        • MicroEJ Platform Configuration
        • Application Configuration
    • Explore Data Serialization Formats
      • Intended Audience
      • XML
        • XML Module
        • Example Of Use
      • JSON
        • JSON Module
        • Example Of Use
      • CBOR
        • CBOR Module
        • Example Of Use
    • Instrument Java Code for Logging
      • Intended Audience
      • Introduction
      • Overview
      • Log with the Trace Library
      • Log with the Message Library
      • Log with the Logging Library
      • Remove Logging Related Code
        • Wrap with a Constant If Statement
        • Shrink Code Using ProGuard
    • Run a Test Suite on a Device
      • Intended Audience and Scope
      • Prerequisites
      • Introduction
      • Import the Test Suite
      • Configure the Test Suite
        • Select the Test Suite Version
        • Configure the Platform BSP Connection
        • Configure Execution Trace Redirection
        • Start Serial To Socket
        • Configure the Test Suite Specific Options
      • Run the Test Suite
      • Configure the Tests to Run
      • Examine the Test Suite Report
    • Implement a Blocking Java Native Method with SNI
      • Intended Audience
      • Prerequisites
      • Overview
      • Requirements
      • Example Code
        • Application Behavior
      • Implement a Non-Blocking Method
        • Update the C Native Function Implementation
        • Application Behavior
    • Get Started With GUI
      • Setup your Environment
        • Prerequisites
        • Download and Install
        • Start the IDE for the First Time
        • Prepare Platform Sources
        • Create a New Project
        • Featured Project: Widget Demo
      • Starting MicroUI
        • Widgets
        • Desktop Usage
        • Displaying a Label
      • Basic Drawing on Screen
        • Drawing Basic Shapes
        • Drawing Images
        • Drawing Thick Shapes
      • Animation
        • Usage
      • Creating Widgets
        • Setting Up
        • Using with Animator
      • Using Layouts
        • Using a Flow Layout
        • Using a Canvas
      • Style
        • Selectors
      • Images
        • Adding Images
        • Displaying an Image
      • Advanced Styling
        • Using Images in Stylesheet
        • Class Selector
        • Combinator and Conditional Style
      • Event Handling
        • The handleEvent Method
        • Using Events with Buttons
      • Fonts
        • Creating a font
        • Adding the Font to a Label
      • Scroll List
        • List
        • Scrollable List
      • Creating a Contact List using Scroll List
        • Creating the Contact Widget
      • Internationalization
        • Using PO Files
        • Configuring NLS in MicroEJ
        • Usage
        • Loading Translations as an External Resource
    • Discover Embedded Debugging Techniques
      • Intended Audience
      • Debugging Tools
        • Events Tracing and Logging
        • Runtime State Dump
        • Memory Inspection
        • Platform Qualification
        • Simulator Debugger
        • Static Analysis Tools
        • GUI Debugging Tools
      • Use Case 1: Debugging a GUI Application Freeze
        • Check RTOS Tasks Scheduling
        • Check Java Threads Scheduling
        • Check UI Thread Liveness
        • Check Input Events Processing
        • Implementation Details
      • Use Case 2: Debugging a HardFault
        • Useful Resources
        • Exceptions, HardFaults And Exception Handler
        • What To Do In Exception Handlers?
        • Memory Protection Unit (MPU)
        • Memory Corruption
        • Investigation
        • When a HardFault Occurs
        • Memory Dump Analysis
        • Trigger a VM Dump
    • How to Add Emojis to a Vector Font
      • Intended Audience
      • Prerequisites
      • Append the Emoji Glyphs
  • Get Support
  • About MicroEJ
MicroEJ Documentation
  • HOME  /
  • VEE Porting Guide  /
  • Appendices  /
  • Tools Options and Error Codes  /
  • Immutable Files Related Error Messages

Immutable Files Related Error Messages¶

The following error messages are issued at SOAR time (link phase) and not at runtime.

Errors when parsing immutable files at link time.¶
Message  ID Description
0 Duplicated ID in immutable files. Each immutable object should have a unique ID in the SOAR image.
1 An immutable file refers to an unknown field of an object.
2 Tried to assign the same object field twice.
3 All immutable object fields should be defined in the immutable file description.
4 The assigned value does not match the expected Java type.
5 An immutable object refers to an unknown ID.
6 The length of the immutable object does not match the length of the assigned object.
7 The type defined in the file doesn’t match the Java expected type.
8 Generic error while parsing an immutable file.
9 Cycle detected in an alias definition.
10 An immutable object is an instance of an abstract class or an interface.
11 Unknown XML attribute in an immutable file.
12 A mandatory XML attribute is missing.
13 The value is not a valid Java literal.
14 Alias already exists.
Next Previous

© Copyright 2008-2023, MicroEJ Corp. Content in this space is free for read and redistribute. Except if otherwise stated, modification is subject to MicroEJ Corp prior approval. MicroEJ is a trademark of MicroEJ Corp. All other trademarks and copyrights are the property of their respective owners. Revision 02dd3f62.

Read the Docs v: latest
Versions
Downloads
On Read the Docs
Project Home
Builds

Free document hosting provided by Read the Docs.
  • docs Docs
  • Resources
  • Forum