﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
11924	Add compatibility with Java 9	Don-vip	team	"Java 9 is well advanced in its development, early builds are now available. [http://openjdk.java.net/projects/jigsaw/ Jigsaw project] is now merged into main tree.

I have added basic Java 9 support in r8777:8778, r8793, r8795, r8796:8797 but making JOSM work with Jigsaw is another challenge.

This ticket aims to list all problems encountered.

1. ~~xmltask does not work ==> cannot build OSX package~~ ==> [https://github.com/don-vip/xmltask fork created]
1. [http://sourceforge.net/p/proguard/bugs/551/ Proguard does not work] ==> cannot build optimized jar
1. ~~[https://issues.apache.org/jira/browse/GROOVY-7587 Groovy does not work] ==> cannot run some tests + cannot build taginfo files~~ ==> fixed
1. ~~{{{ResourceBundle.getBundle(""sun.awt.resources.awt"")}}} results in an internal error ==> bug [https://bugs.openjdk.java.net/browse/JI-9025152 reported to Oracle]~~ ==> fixed
1. ~~Findbugs does not recognize new version string ==> [https://sourceforge.net/p/findbugs/bugs/1432/ bug and PR created]~~ ==> fixed
1. ~~[http://openjdk.java.net/jeps/272 JEP 272] removes `com.apple.eawt` package ==> need to update `PlatformHookOsx`~~ ==> fixed
1. ~~javabug:6850612 deprecates `Class.newInstance` ==> replace it by `Class.getConstructor().newInstance()`~~ ==> fixed
1. ~~javabug:8154801 deprecates `java.util.Observer / java.util.Observable` ==> replace it by `javax.swing.ChangeListener`~~ ==> fixed 
1. ~~Ant does not work anymore ==> [https://bz.apache.org/bugzilla/show_bug.cgi?id=59556 Bug created] + workaround done in r10259~~ ==> Fixed in Ant 1.9.8 / 1.10.0
1. ~~javabug:8152912 deprecates `XMLReaderFactory`~~ ==> fixed
1. ~~Groovy bug: https://issues.apache.org/jira/browse/GROOVY-7879~~ ==> fixed
1. ~~javabug:8143077 deprecates `InputEvent.*_MASK` constants in favor of `InputEvent.*_DOWN_MASK`~~ ==> fixed
1. ~~The workaround to disable ""Internal proprietary API"" warning does not work anymore~~ ==> no way to disable it, but hidden in Jenkins builds

Unit tests:
1. ~~jacoco has problems with nashorn: `Method jdk.dynalink.linker.LinkerServices.$jacocoInit()[Z must be InterfaceMethodref constant` [https://travis-ci.org/michaelzangl/josm/jobs/142048549#L451 log]~~ ==> See #13150 for fix
1. ~~EqualsVerifier bugs: https://github.com/jqno/equalsverifier/issues/152 + https://github.com/jqno/equalsverifier/issues/169~~ ==> fixed
1. ~~Projections off by the last digit.~~ ==> fixed (see #11889, #13387)

Plugins:
1. ~~Geotools does not work ==> https://osgeo-org.atlassian.net/browse/GEOT-5289~~ ==> forked

See #15560 for Java 10 compatibility."	enhancement	closed	major	17.08	Core		fixed	java9 jigsaw javabug	
