Release Notes
Java™ SE for Embedded 7 Runtime Environment

July 28, 2011

This document summarizes the functionality and known issues of Java SE for Embedded 7. Java SE for Embedded 7 is based on Java Platform Standard Edition 7 (Java SE 7) and provides specific features and support for embedded systems.

To ensure that you have the most recent updates of the technical documents for Java SE for Embedded, check the latest versions on the Java SE for Embedded Product Documentation web site.

Platform Support

This release of Java SE for Embedded 7 was tested on Linux for ARM and x86 systems. The requirements of these systems are specified at Java SE for Embedded System Requirements. For ARM, testing was done on the v5, v6 and v7 architectures. Headless mode was tested on all systems; headful mode was tested on ARMv7.

Some of the information in this document describes support or issues concerning graphics, window managers, audio, and so forth, and therefore only applies to the headful release on ARMv7.

What's New in This Release

Java SE for Embedded 7 includes the new features of Java SE 7, such as JSR 292: Support for dynamically-typed languages (InvokeDynamic), JSR 334: Small language enhancements (Project Coin), strict class-file checking, plus numerous other new features.

For more information, please refer to the Java SE 7 Release Notes.

Known Limitations

Server (C2) JIT Compiler Not Included

Java SE for Embedded 7 does not include the Server (C2) JIT Compiler.

Garbage First Garbage Collector Not Supported

Java SE for Embedded 7 does not support the experimental Garbage First (G1) garbage collector.

OpenGL Limitation

The headful version of Java SE for Embedded 7 on Linux ARM does not support the OpenGL acceleration pipeline for Java2D.

ARM ReservedCodeCacheSize Limitation

In Java SE for Embedded 7, the ARM ReservedCodeCacheSize maximum value is 32 megabytes. This limitation will be fixed in a future Java SE for Embedded 7 update.

Bug Fixes

Bug Database - In most cases, the bug ID number for each bug fixed is a link to the detailed bug report on the Bug Database (Bug Parade) web site. Bug Database enables you to file your own bug reports, add comments to existing bug reports, and vote for the bugs you consider most important.

Java SE for Embedded 7 is based on Java SE 7. Refer to the Java SE 7 Release Notes for additional information on relevant bug fixes.

Comparison Between Java SE and Java SE for Embedded

Java SE for Embedded derives from Java SE, but provides specific features and support for the embedded market on a limited set of supported platforms. The embedded-specific features and support include additional platforms, small footprint JREs (optional files removed), headless configurations, and memory optimizations.

All Java SE for Embedded offerings are Java SE compliant.

Java SE for Embedded provides only the 32-bit "client" version of the Java virtual machine; the 64-bit version is not supported, and using the -server option has no effect.

For more information on functionality that is generally common to both Standard Java SE 7 and Java SE for Embedded 7, including the Java language, HotSpot VM, Libraries and Tools, see the Java SE Documentation.

See also the Java SE 7 Release Notes for release information on the Java SE 7 platform.

For more information on functionality that is specific to Java SE for Embedded 7, see SE Functionality Specific for Embedded.

How to Enable Java Plug-In

The headful version of Java SE for Embedded 7 on ARMv7 supports the Java™ Plug-in technology. We have verified that Java SE for Embedded 7 works with the Firefox 3.6 web browser. Mozilla's Gecko rendering engine version 1.9.0 FCS or later is required. Non-Mozilla web browsers, including the WebKit rendering engine (used in some non-Mozilla web browsers), are not supported at the time of this writing.

A symbolic link needs to be created in order to get the Java Plug-in to work. This link should point from the browser's plugins directory to the Java Plug-in shared library included in the JRE, and it can be created with the following command from a shell:

ln -s <JAVA_HOME>/lib/arm/libnpjp2.so <MOZILLA_DIR>/plugins/libnpjp2.so

In the above command, <JAVA_HOME> represents the directory where you installed the headful Java SE for Embedded 7 bundle (for example, /usr/java/ejre1.7.0), and <MOZILLA_DIR> represents the directory where you installed your web browser (for example, /usr/lib/mozilla).