imagej / imagej/imagej2

Improve behavior with Java 10

Open
#197 14 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
1.4k
Forks
350
PR merge metrics
No merged PRs in 30d

Description

ImageJ2 and Fiji work with Java 10 but there are some annoyances that need to be addressed.

* [ ] The ImageJ launcher must be new enough to support it. The macOS version of Fiji already includes a new-enough launcher, but not yet for Windows and Linux. (If you want to try the latest version of the launcher, see [this page](https://imagej.net/Launcher#Download).) We need to upgrade the launcher for all platforms.
* [ ] There is a console message on startup `WARNING: An illegal reflective access operation has occurred` which can be safely ignored. Further investigation needed regarding how best to address this.
* [x] When starting up on macOS, there is a `NoSuchMethodError` thread dump on the console, and a `NoClassDefFoundError` thread dump in an Exception window. The former is due to Fiji attempting to [patch the behavior of the Alt key](https://github.com/fiji/fiji-compat/blob/fiji-compat-2.0.3/src/main/java/fiji/IJ_Alt_Key_Listener.java#L87). The latter is due to ImageJ1 attempting to [add Mac-specific behavior](https://github.com/imagej/ImageJA/blob/v1.52a/src/main/java/ij/ImageJ.java#L220) [using the obsolete `com.apple.eawt API`](https://github.com/imagej/ImageJA/blob/v1.52a/src/main/java/MacAdapter.java#L13).
* [x] Also from ImageJ1, a dialog box appears stating that JavaScript is not available, and asking to download it. It is unclear why ImageJ1 concludes this when running as part of ImageJ2, but behaves different when running vanilla.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the launcher requirements for Windows and Linux, then inspect the startup warning and the referenced files fiji-compat/src/main/java/fiji/IJ_Alt_Key_Listener.java, ImageJA/src/main/java/ij/ImageJ.java, and ImageJA/src/main/java/MacAdapter.java. Check the JavaScript-availability behavior in ImageJ1 as well. Done means the remaining Java 10 startup annoyances are addressed across the listed platforms, with behavior verified on startup.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, javascript
Domain
desktop, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.