Selecting the Java Compat Mapping

Ice provides two distinct Java mappings:

  • Java Compat
    This mapping is largely backward-compatible with prior Ice releases. Although Ice 3.7 no longer supports Java versions prior to Java 8, the "Compat" mapping does not depend on any Java 8-specific language or run-time features.

  • Java
    This is a new mapping that takes advantage of features in Java 8.

This chapter describes the Java Compat mapping.

The Java Compat mapping is provided for backwards compatibility, and will not be included in future releases. If you are starting a new project with Ice, please use the Java mapping; the only exception is if you need to support older Android devices, in which case you'll need to use the Java Compat mapping. If you are upgrading an existing application, you should consider upgrading your code to use the Java mapping.

Selecting the Java Compat Mapping

slice2java, the Slice-to-Java translator, generates code for the Java mapping by default. You must specify the --compat option in order to generate code for the Java Compat mapping instead.