Our RCP client application has german and french translations. For all the standard commands like Delete or Cancel we include the org.eclipse.babel. Most of the time this works fine and delete menu items or cancel buttons are translated to german or french.
But sometimes we see this standard labels in english, while all our own translations are shown in the correct language.
We did not find any rule why this happens. We see this behaviour occasionaly on different plattforms: when we start the product in eclispe for debugging, standalone on windows, on jenkins (for automated gui tests) or even when the client is used from citrix.
We have a target plattform definition which includes:
<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit">
<repository location="https://download.eclipse.org/technology/babel/update-site/R0.20.0/2022-12/"/>
<unit id="org.eclipse.babel.nls_eclipse_de.feature.group" version="4.26.0.v20230220105658"/>
<unit id="org.eclipse.babel.nls_eclipse_fr.feature.group" version="4.26.0.v20230220105658"/>
<unit id="org.eclipse.babel.nls_eclipse_it.feature.group" version="4.26.0.v20230220105658"/>
</location>
We define a menu entry with the standard delete command in the plugin.xml like this:
<command commandId="org.eclipse.ui.edit.delete">
<visibleWhen checkEnabled="true">
<and>
<with variable="AuftragRW">
<equals value="AuftragRW"/>
</with>
</and>
</visibleWhen>
</command>
We use the -nl switch up on start-up to set the language
-nl de_CH
For good measure we also set some more VM Arguments
-Duser.country=CH
-Duser.language=de
-Dosgi.nl=de_CH
Our own translations are located in the standar folder of every bundle
OSGI-INF
└── l10n
├── bundle.properties (german translations)
├── bundle_fr.properties
└── bundle_it.properties
Any idea why this happens?

