This issue applies to:
- RepreZen API Studio Desktop 1.6.8 or earlier; or any release of API Studio for Eclipse running in an Eclipse Mars or Neon IDE.
- MacOS only. The issue is not present on Windows or Linux.
- Java 1.8.0_152 and later releases.
When running on this configuration, RepreZen API Studio may install successfully, and appear to start normally. But once the API Studio application loads, the menu and dialogs are not accessible, and RepreZen API Studio is unresponsive to keyboard/mouse interaction.
This article describes the technical background, two recommended workarounds, and expectations for a permanent fix.
Cause: Java 1.8.0_152 introduced a bug that affects Eclipse IDE
Java 1.8.0_152 (also known as release 8u152) introduced a bug that affects some versions of Eclipse and Eclipse-based applications. You can find more details in this OpenJDK ticket or this Eclipse community forum discussion thread. The issue is ongoing with later patch releases of Java as well.
Solution 1: Run API Studio Desktop with Java 1.8.0_151
One recommended workaround is to run RepreZen with another Java patch release, e.g., 1.8.0_151.
These steps need to be done only once. Once you've completed these steps, RepreZen API Studio will be using a compatible JVM release and should work normally.
- Install jdk1.8.0_151 from the download page:
- Open the /Applications/RepreZen API Studio.app/Contents/Eclipse/RepreZen.ini file and provide the path to the JVM as a -vm parameter. Assuming that JDK 1.0.0_151 is installed to its default location at /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/bin, the -vm setting should look like this:
The entire RepreZen.ini should look like this:
-startup ../Eclipse/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar --launcher.library ../Eclipse/plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.300.v20150602-1417 -pluginCustomization plugin_customization.ini -vm /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/bin -vmargs -Djavax.xml.accessExternalDTD=all -Djava.net.preferIPv4Stack=true -Xms256m -Xmx512m -XX:PermSize=192M -XX:MaxPermSize=256M -Djavax.xml.accessExternalDTD=all -XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
- Launch RepreZen as usual. The UI should be responsive now.
Solution 2: Install API Studio for Eclipse
As this bug is not present in the recent versions of Eclipse, you may also install RepreZen on top of a new Eclipse distribution.
- Download and install the latest Eclipse Oxygen release from the Eclipse website.
- Follow the steps for "Installing API Studio for Eclipse" from this article:
RepreZen API Studio Installation Options: Desktop and Eclipse IDE