
MicroEJ Documentation MicroEJ Corp. Revision d6b4dfe4 Feb 24, 2021 Copyright 2008-2020, 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. CONTENTS 1 MicroEJ Glossary 2 2 Overview 4 2.1 MicroEJ Editions.............................................4 2.1.1 Introduction..........................................4 2.1.2 Determine the MicroEJ Studio/SDK Version..........................5 2.2 Licenses.................................................7 2.2.1 License Manager Overview...................................7 2.2.2 Evaluation Licenses......................................7 2.2.3 Production Licenses...................................... 10 2.3 MicroEJ Runtime............................................. 14 2.3.1 Language............................................ 14 2.3.2 Scheduler............................................ 14 2.3.3 Garbage Collector....................................... 14 2.3.4 Foundation Libraries...................................... 14 2.4 MicroEJ Libraries............................................ 15 2.5 MicroEJ Central Repository....................................... 16 2.6 Embedded Specification Requests................................... 16 2.7 MicroEJ Firmware............................................ 16 2.7.1 Bootable Binary with Core Services.............................. 16 2.7.2 Specification.......................................... 17 2.8 Introducing MicroEJ SDK........................................ 17 2.9 Introducing MicroEJ Studio and Virtual Devices............................ 18 2.10 Perform Online Getting Started..................................... 19 2.11 GitHub Repositories........................................... 20 2.12 System Requirements.......................................... 25 2.13 Get Support............................................... 25 3 Application Developer Guide 26 3.1 Introduction............................................... 26 3.2 Local Workspaces and Repositories................................... 26 3.3 Standalone Application......................................... 27 3.3.1 MicroEJ Platform Import.................................... 27 3.3.2 Build and Run an Application................................. 30 3.3.3 Build Output Files....................................... 35 3.3.4 MicroEJ Launch......................................... 36 3.3.5 Application Options...................................... 40 3.3.6 SOAR.............................................. 67 3.4 Sandboxed Application......................................... 68 3.4.1 Sandboxed Application Structure............................... 68 i 3.4.2 Application Publication.................................... 69 3.4.3 Shared Interfaces........................................ 69 3.5 Virtual Device.............................................. 73 3.5.1 Using a Virtual Device for Simulation............................. 73 3.5.2 Runtime Environment..................................... 73 3.6 MicroEJ Module Manager........................................ 74 3.6.1 Introduction.......................................... 74 3.6.2 Specification.......................................... 75 3.6.3 Module Project Skeleton.................................... 75 3.6.4 Module Description File.................................... 76 3.6.5 MicroEJ Module Manager Configuration........................... 78 3.6.6 Module Build.......................................... 82 3.6.7 Build Kit............................................. 83 3.6.8 Former MicroEJ SDK Versions................................. 83 3.7 Module Natures............................................. 85 3.7.1 Module Repository....................................... 85 3.8 MicroEJ Classpath............................................ 89 3.8.1 Application Classpath..................................... 89 3.8.2 Classpath Load Model..................................... 90 3.8.3 Classpath Elements...................................... 91 3.9 Application Resources.......................................... 94 3.9.1 Images............................................. 94 3.9.2 Fonts.............................................. 95 3.9.3 Native Language Support................................... 96 3.10 Development Tools........................................... 97 3.10.1 Test Suite with JUnit...................................... 98 3.10.2 Stack Trace Reader....................................... 102 3.10.3 Code Coverage Analyzer.................................... 115 3.10.4 Heap Dumper & Heap Analyzer................................ 118 3.10.5 ELF to Map File Generator................................... 129 3.10.6 Serial to Socket Transmitter.................................. 131 3.10.7 Memory Map Analyzer..................................... 132 3.10.8 Event Tracing.......................................... 135 3.10.9 Null Analysis.......................................... 137 3.11 Advanced Tools............................................. 144 3.11.1 MicroEJ Linker......................................... 144 3.11.2 Test Suite Engine........................................ 156 3.11.3 MicroEJ Test Suite Engine................................... 156 3.12 Graphical User Interface......................................... 162 3.12.1 MicroUI............................................. 163 3.12.2 MWT (Micro Widget Toolkit).................................. 193 3.12.3 Widgets and Examples..................................... 209 3.13 Limitations................................................ 211 4 Platform Developer Guide 213 4.1 Introduction............................................... 213 4.1.1 Scope.............................................. 213 4.1.2 Intended Audience....................................... 213 4.2 MicroEJ Platform............................................ 213 4.2.1 Modules Overview....................................... 213 4.2.2 Process Overview........................................ 215 4.2.3 Concepts............................................ 216 4.2.4 MicroEJ Platform Creation................................... 221 4.2.5 Platform Qualification..................................... 233 ii 4.3 MicroEJ Core Engine........................................... 234 4.3.1 Functional Description..................................... 234 4.3.2 Architecture........................................... 235 4.3.3 Capabilities........................................... 236 4.3.4 Implementation........................................ 236 4.3.5 Generic Output......................................... 239 4.3.6 Link............................................... 239 4.3.7 Dependencies......................................... 240 4.3.8 Installation........................................... 240 4.3.9 Use............................................... 240 4.4 Multi-Sandbox.............................................. 241 4.4.1 Principle............................................ 241 4.4.2 Functional Description..................................... 241 4.4.3 Firmware Linker........................................ 242 4.4.4 Memory Considerations.................................... 242 4.4.5 Dependencies......................................... 242 4.4.6 Installation........................................... 242 4.4.7 Use............................................... 242 4.5 Tiny application............................................. 243 4.5.1 Principle............................................ 243 4.5.2 Installation........................................... 243 4.5.3 Limitations........................................... 243 4.6 Native Interface Mechanisms...................................... 243 4.6.1 Simple Native Interface (SNI)................................. 243 4.6.2 Shielded Plug (SP)....................................... 247 4.6.3 MicroEJ Java H......................................... 250 4.7 External Resources Loader....................................... 251 4.7.1 Principle............................................ 251 4.7.2 Functional Description..................................... 251 4.7.3 Implementations........................................ 251 4.7.4 External Resources Folder................................... 252 4.7.5 Dependencies......................................... 252 4.7.6 Installation........................................... 252 4.7.7 Use............................................... 252 4.8 Serial Communications......................................... 252 4.8.1 ECOM.............................................. 253 4.8.2 ECOM Comm.......................................... 254 4.9 Graphical User Interface......................................... 262 4.9.1 Principle............................................ 262 4.9.2 MicroUI............................................. 263 4.9.3 Static Initialization....................................... 266 4.9.4 Low Level API.......................................... 270 4.9.5 LED............................................... 271 4.9.6 Input.............................................. 273 4.9.7 Display............................................. 277 4.9.8 Images............................................. 299 4.9.9 Fonts.............................................. 317 4.9.10 Simulation........................................... 324 4.10
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages500 Page
-
File Size-