<i18n dev> DateFormatSymbols for Locale.GERMAN changed form Java 8 to Java 9

Seán Coffey sean.coffey at oracle.com
Wed Dec 20 17:40:22 UTC 2017


CLDR Locale data is now used by default in JDK 9. If you need to remain 
with JDK 8 behaviour you can use the 'java.locale.providers' system 
property. See 
https://docs.oracle.com/javase/9/intl/internationalization-enhancements-jdk-9.htm#JSINT-GUID-974CF488-23E8-4963-A322-82006A7A14C7

Regards,
Sean.

On 20/12/17 16:56, Simon Willnauer wrote:
> Hey folks,
>
> I have this simple test that I run with java 9.0.1 as well as java 1.8_131
>
> DateFormatSymbols s = new DateFormatSymbols(Locale.GERMAN);
> System.out.println(Arrays.toString(s.getShortWeekdays()));
>
> on Java 9 it prints this:
>
> [, So., Mo., Di., Mi., Do., Fr., Sa.]
>
> while on Java 1.8 and below it prints:
>
> [, So, Mo, Di, Mi, Do, Fr, Sa]
>
> This is also true for Month in the German local. I didn't test
> anything else but I wonder if this is expected or if it is considered
> a bug. I also raised an issue against JodaTime which relies on this
> here [1]. I ran into this a while ago on elasticsearch here [2] but
> just picked it up. I wish I had done this earlier!
>
> thanks,
>
> simon
>
>
> [1] https://github.com/JodaOrg/joda-time/issues/462
> [2] https://github.com/elastic/elasticsearch/issues/10984



More information about the i18n-dev mailing list