Для меня ведущая причина (из Руководства Gettext Commons ) будет:
I18n также поддерживает правильную обработку множественного числа:
System.out.println(i18n.trn("Copied file.", "Copied files.", 1));
// will print "Copied file."
System.out.println(i18n.trn("Copied file.", "Copied files.", 4));
// will print "Copied files."
Этот пример не самый лучший.Должно быть сказано «поддерживает правильную обработку множественного числа в целевых языках ».Это потому, что есть языки, которые могут иметь более одной формы множественного числа (на самом деле таких языков довольно много).
Кроме того, у вас будет запасной язык (я думаю, английский), интегрированный в вашхороший исходный код (я считаю, что лучше показывать текст на английском, чем название ключа).
Единственное, что у меня есть, но оно может быть недействительным: хотя Gettext Commons выпущены на условияхЛицензия Apache 2.0 требует наличия установленного в системе Gnu gettext и (поправьте меня, если я ошибаюсь) лицензию GPL (или лицензию L-GPL, если вы работаете в Linux).Если мои предположения верны, это будет означать, что если ваше приложение предназначено только для Linux, вам придется открыть его.