Backporting Tools In Java

Java Backporting Tools are softwares usually written in Java which convert Java classes bytecodes from newer version of the Java Platform to an older one (for example Java 6.0 backported to 1.5).

The following are a few of the Java Backporting Tools available as of this posting.

  • RetroTranslator
  • RetroWeaver
  • Declawer
  • JBossRetro

Retrotranslator one of the backporting tools makes Java applications compatible with Java 1.4, Java 1.3 and other environments. It supports all Java 5.0 language features and a significant part of the Java 5.0 API on both J2SE 1.4 and J2SE 1.3. In other Java environments only the Java 5.0 features that don’t depend on the new API are supported. Retrotranslator employs the ASM bytecode manipulation framework to transform compiled Java classes and the backport of the Java 5.0 concurrency utilities to emulate the Java 5.0 API. [GoTo RetroTranslator Home]

The following features are supported by RetroTranslator:

  • Generics
  • Annotations
  • Reflection on generics and annotations
  • Typesafe enums
  • Autoboxing/unboxing
  • Enhanced for loop
  • Varargs
  • Covariant return types
  • Formatted output
  • Static import
  • Concurrency utilities
  • Collections framework enhancements

Retroweaver is another backporting tool that enables you to take advantage of the new Java 1.5 language features in your source code, while still retaining compatability with 1.4 (and older) virtual machines. Retroweaver operates by transforming Java class files compiled by a 1.5 compiler into class files which can be run on an older virtual machine. [GoTo RetroWeaver Home]

Retroweaver supports most 1.5 features while running on 1.4 including the following features.

  • Generics
  • Extended for loops
  • Static imports
  • Autoboxing/unboxing
  • Varargs
  • Enumerations
  • Annotations