Caveats / hacks
NILS and Java’s module-info.java
If you use NILS with a module based application and want to use the resource bundles or other files for the translations of your application you must give access to the folder containing the resource bundles using the open keyword.
module xyz {
export my.package;
requires com.codepulsar.nils.core;
open nls;
}
In the example nls is the folder containing the resource files.
Multiple jars contains "nls/translation" files / NILS-001
If you want to use NILS in a project contains different modules, where (at least) two modules defines it own NilsFactory object, then the error NILS-001 could happen:
NILS-001: Could not find a translation for key 'yourkey' and locale 'de_DE'.
This error occurs because of an erroneous resolution of the translation files.
There is a bug reported (see https://github.com/codepulsar-com/nils/issues/72.)
There are currently two workarounds: