2015-12-22 - The road to Java 8
For many reasons, ImageJ needs to switch to Java 8. Hence, in recent months, the ImageJ team at LOCI has been taking steps toward migrating ImageJ and Fiji toward Java 8. This week marks a significant milestone in that effort:
- Several ImageJ and Fiji components migrated to Java 7 or 8; and
- A new Java-8 update site was created, which offers the latest releases of these components.
Key points about ImageJ's Java 8 migration strategy
- Individual ImageJ and Fiji components are being migrated to Java 7 or Java 8 as needed (see below for a current list).
- The ImageJ and Fiji update site will continue to ship the final Java-6-compatible versions of these components.
- Updates for components which require Java 7 or 8 will be provided using the new Java-8 update site—not the ImageJ or Fiji update sites.
How to update
- If you still need Java 6, do nothing.
- You will keep receiving updates of the latest Java-6-compatible component versions.
- But you will no longer receive updates for components which have migrated to Java 7 or 8.
- If you want the latest updates, update your ImageJ installation to use Java 8 and then enable the Java-8 update site.
- Make sure you switch your ImageJ over to Java 8 before enabling the Java-8 update site!
Components which have already migrated
The following ImageJ and Fiji components now require a minimum Java version of Java 7 or Java 8:
|Component||Requires||Why?||Latest version||Final Java 6 version|
|imagej-ops||Java 8||See 0137b89b||0.24.1||0.23.0|
|imagej-ui-swing||Java 8||Depends on imagej-ops||0.17.1||0.16.0|
|imagej||Java 8||Depends on imagej-ops||2.0.0-rc-44||2.0.0-rc-43|
|legacy-imglib1||Java 7||Depends on mines-jtk||1.1.5||1.1.4-DEPRECATED|
|3D_Blob_Segmentation||Java 7||Depends on 3D_Viewer||3.0.0||2.0.2|
|3D_Viewer||Java 7||Depends on j3dcore and j3dutils||4.0.1||3.1.0|
|Descriptor_based_registration||Java 7||Depends on SPIM_Registration, mines-jtk, j3dcore||2.0.12||2.0.11|
|Fiji_Developer||Java 8||Depends on imagej-ui-swing||2.0.4||2.0.3|
|SPIM_Registration||Java 7||Depends on 3D_Viewer, j3dcore, j3dutils, legacy-imglib1||4.0.0||3.0.5|
|Simple_Neurite_Tracer||Java 7||Depends on 3D_Viewer, j3dcore, j3dutils||3.0.0||2.0.4|
|TrackMate_||Java 7||Depends on 3D_Viewer, j3dcore, j3dutils||3.0.0||2.8.1|
|Trainable_Segmentation||Java 7||Depends on mines-jtk||3.0.0||2.3.0|
|TrakEM2_Archipelago||Java 7||Depends on Simple_Neurite_Tracer, legacy-imglib1 (via TrakEM2)||2.0.1||2.0.0|
|VIB_||Java 7||Depends on 3D_Viewer, j3dcore, j3dutils||3.0.0||2.0.3|
|Volume Calculator||Java 7||Depends on 3D_Viewer, j3dcore, j3dutils||2.0.0||1.0.2|
Conflicting update sites
It is the responsibility of individual update site maintainers to decide if and when they follow this migration process. The following update sites are known to cause conflicts when enabled with the Java-8 update site. If your workflow requires components from these sites, we do not recommend enabling the Java-8 update site.
Note: if you are a maintainer of one of these update sites and need any guidance on how to update your project to comply with the Java-8 update site, please contact us on the ImageJ forum.
Please post any comments to the ImageJ forum. Thank you for the continued feedback and support!