cdd / bioassay-template

Other
7 stars 2 forks source link

Compiling with JDK11 #110

Open aclarkxyz opened 5 years ago

aclarkxyz commented 5 years ago

Seems like when you install JDK 11, it's not possible to compile the template editor, because the JavaFX library has been detached.

TODO: update the project so that the target runtime remains Java 8, but it can be compiled and run under Eclipse regardless of whether JDK8 or JDK11 is being used.

kodecharlie commented 5 years ago

Ignoring the expected coding upgrades required to bring Java 8 inline with 11, I think this issue should be relatively simple to resolve. That is, we download / install the relevant Java FX jar(s) into our lib folder, and then ant optionally references said jar(s) at compile-time, depending on whether the compiler expects Java 8 or Java 11 code.

I will go ahead and tackle this issue. Here are the scenarios to be addressed:

Can I assume here that we are completely moving away from compilation with Java 8?

aclarkxyz commented 5 years ago

The goal is to be able to compile & run everything with either JDK 8 or JDK 11, which are the two versions that are likely to be encountered in the wild. It is currently impossible with JDK 11, so we need to fix that. It is acceptable to make users of the template editor to install an extra thing, because there's no way around that.

kodecharlie commented 5 years ago

For JDK 11, it's clear we will need to upgrade our Eclipse IDE; see this stackoverflow article.

As for optional builds for either Java 8 or 11, my plan is simple:

All of this is straightforward. I will confirm behavior on two separate developer environments: (i) my current developer environment, which uses Eclipse Oxygen 4.7.3a, and (ii) an alternative developer environment that uses the Eclipse IDE compliant with Java 11. All changes should be local to build.xml, with the exception of the proposed build.properties file.