Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compiling needs to be fixed under Java versions 10 and above #637

Open
dmusican opened this issue Aug 7, 2018 · 1 comment
Open

Compiling needs to be fixed under Java versions 10 and above #637

dmusican opened this issue Aug 7, 2018 · 1 comment
Assignees

Comments

@dmusican
Copy link
Owner

dmusican commented Aug 7, 2018

The class import com.sun.javafx.scene.control.skin.TextFieldSkin, which we use, was moved to import javafx.scene.control.skin.TextFieldSkin for Java 9. (It's questionable as to whether we should have been using it in the first place; there are lots of "beware" warnings regarding using this package.) As of Java 9, it's fair game, but since it moved, the imports are different. Travis on OSX is now running Java 10 by default, and so our build breaks. I dealt with it by hardcoding .travis.yml to use an older build system on Travis for OSX, but that's not sustainable. Update Elegit so that we can reasonably build on Java 8 or above.

This is somewhat of a pain to do, since Java doesn't cleanly natively support conditional compiling. Inheritance is determined at compile-time, so any sort of OO design pattern won't help. I think that our choices are either to stop supporting Java 8, to get that class out of there, or to use conditional compiling via Maven (it has a "munge" plugin). I tried it briefly; the frustrating catch is that it puts conditional code in Java comments, and so with the imports gone, IntelliJ complains. Figure out what our options are.

@dmusican
Copy link
Owner Author

Travis is now at Java 11 by default, and won't even build Java 8 properly without acrobatics. This is now critically important to fix in order to keep our tests running.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant