Java backporting tools

Java backporting tools are programs (usually written in Java) that convert Java classes bytecodes from one version of the Java Platform to an older one (for example Java 5.0 backported to 1.4).

Java backporting tools comparison

Main information

Source Version Target Version Last Release License Website
Retrolambda Java 8 Java 7, 6, 5 2015-12-19, 2.1.0 Apache License 2.0 https://github.com/orfjackal/retrolambda
Retrotranslator Java 5 2009-08-09, 1.2.9 BSD-like http://retrotranslator.sourceforge.net/
Retroweaver Java 5 2008-10-14, 2.0.7 BSD-like http://retroweaver.sourceforge.net/
Declawer Java 5 Java 1.4 2007-11-14 LGPL or MPL http://www.glazedlists.com/Home/declawer
JBossRetro Java 5 Java 1.4 2008-03-10, 1.1.2 LGPL http://www.jboss.org/community/docs/DOC-10738

Features

lambda expressions default methods generics enhanced for loops annotations autoboxing and unboxing static imports varargs Enumerations Reflection on generics and annotations Covariant return types
Retrolambda Yes Yes
Retrotranslator No No Yes Yes Yes Yes Yes Yes Yes Yes Yes
Retroweaver No No Yes Yes Yes Yes Yes Yes Yes No No
Declawer No No Yes
JBossRetro No No
Formatted output Formatted input Collections framework enhancements Concurrency utilities emulate the Java 5.0 memory model support for JDK1.6 File methods like canExecute() API support for JDK1.4 API support for JDK1.3 API support for older release
Retrolambda
Retrotranslator Yes No Yes Yes[1] No No extensive limited none
Retroweaver No No No No No
Declawer
JBossRetro
gollark: This is probably just yet another step toward preventing users from running any non-Apple-approved binaries and more erosion of general purpose computing.
gollark: As someone put it:> Don't think so? Apple now theoretically has a centralized database of every Mac user who's ever used youtube-dl. Or Tor. Or TrueCrypt.
gollark: As well as the speed issue there are also obvious privacy implications.
gollark: Apparently not!
gollark: Apparently Apple is now making it so that Mac OS Catalina uploads (EDIT: a hash of) *all executables* you run (for the first time on that system) to Apple: https://lapcatsoftware.com/articles/catalina-executables.html

See also

References

  1. It uses the backport of the Java 5.0 concurrency utilities.


This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.