Hi,
I am trying to understand how MicroEJ resources work.
From an Application POV, there are Applications Resources: Application Resources — MicroEJ Documentation
How Applications Resources are loaded is explained in the Classpath documentation: MicroEJ Classpath — MicroEJ Documentation
From a Platform POV, there is External Resources: External Resources Loader — MicroEJ Documentation
But it is not clear to me when the External Resources Loader is used.
For example, what happens for NLS files? Are they internal or external resources?
The doc says:
The available list of internal resources to embed must be specified in the MicroEJ Application launcher (MicroEJ launch). Under the “Resources” tab, select all internal resources to embed in the final binary file.
I don’t have resources configured in my launcher, does that mean my translations are External Resources?
Yet, I’m confused by the sentence on Internal Resources:
The SOAR step loads the resource and copies it into the same C library as the MicroEJ Application.
I checked the .map
of my firmware, the NLS files are under _java_rodata_resource_java_PCLASSPATH_FILE.nls
.
So my understanding is that the NLS files are bundled in the microejapp.o
. Does that mean they are Internal Resources?
For images, there is a mention about imagesext.list
files to manage images as external resources: Image Loader — MicroEJ Documentation
Does that mean that, if I don’t use this file I am using Internal Resources?
Can you tell me what I am missing and clarify to me the distinction between resources?