5 Replies Latest reply: Mar 11, 2013 4:55 AM by islamadel
fatso83 Level 1 Level 1 (0 points)

I have a new MacBook Pro with a retina display, and after installing Java, all applets and java web start programs look blurry. After some googling, it seems as if the Apple supplied Java 6 has Retina support, but the one from Oracle (Java 7) does not.

 

So I set out to install the latest Java 6 package from Apple, but after following the official instructions for removing Oracle Java 7 and installing Java 6, launching Web Start applications did not work. All I got was a dialog saying I should press "More Info" in order to be taken to Oracles official download page for Java 7.

 

I followed the instructions that included creating a symlink to the javaws executable, and I have checked that it exists at that path. Of course, the Java preference pane has again disappeared from System Preferences, so I don't get to check if it has been picked up by the system...

 

If I type "java -version" in the Terminal, it shows the right version information:

$ java -version

java version "1.6.0_41"

Java(TM) SE Runtime Environment (build 1.6.0_41-b02-445-11M4203)

Java HotSpot(TM) 64-Bit Server VM (build 20.14-b01-445, mixed mode)


MacBook Pro with Retina display, OS X Mountain Lion (10.8), 16GB RAM
  • 1. Re: Enable Java 6 for Web Start and applets in OS X 10.8?
    camilohoyos Level 1 Level 1 (10 points)

    I had the exact same problem. I solved it installing the Java 7 from the "More info" button. Then installing Java 6 from http://support.apple.com/kb/DL1572. Marking a reboot, and then following the official instructions: http://support.apple.com/kb/HT5559?viewlocale=en_US&locale=en_US

     

    Maybe you should try to have both installations enable before to proceed with the instructions

  • 2. Re: Enable Java 6 for Web Start and applets in OS X 10.8?
    islamadel Level 1 Level 1 (0 points)

    Try This script to RE-Enable Java 6 for Applets on Mac OS X 10.8 and Java 7 update 17 already installed.

     

    http://www.4shared.com/file/na_q9PvS/Java_6-7u17_islam.html

  • 3. Re: Enable Java 6 for Web Start and applets in OS X 10.8?
    fatso83 Level 1 Level 1 (0 points)

    A "script" with a size of 172 MB? You must be trippin' if you think I'm installing that.

     

    EDIT: OK. Now I have looked into the file you linked to, and it is not so mischievous as it seems. What you want people to download is a DMG file containing Java 7 (at least), modified to execute some additional homemade scripts that first backs up your old java install, and then modifies it to make it work with Java 6. Thank you for the effort, Islam, but I am a bit too skeptical to install anything this big that is just labelled as a script. Danke jedenfalls :-)

     

    This is the content of the main script for anyone else that might be interested

     

    #!/bin/bash

    # 2013-03-10

    # By Islam Adel

    # enable Java 6 with Java 7 installed

    # USE AT OWN RISK

    #

    # Tested on Mac OS X 10.8.2 with Java 7 update 17

    #

    # Files to update when new Java available:

    #

    # Library_Internet-Plug-Ins/JavaAppletPlugin.plugin

    # Library_Internet-Plug-Ins/JavaPlugin2_NPAPI.plugin

    # System_Library/Java

    # System_Library_Frameworks/JavaFrameEmbedding.framework

    # System_Library_Frameworks/JavaVM.framework

    #

    # get BASE DIR

    clear

    BD=$(echo $0|sed 's/ /\\ /g')

    BASEDIR=$(dirname "$BD")

    #echo $BASEDIR

    BDP=$(echo $BASEDIR|sed 's/\\ / /g')

    #echo CURRENTDIR IS BDP="$BDP"

    # current date time

    NOW="$(date '+%Y-%m-%d_%H-%M-%S')"

    NOW=backup_$NOW

    echo

    echo Activate Java 6 with Java 7 already installed

    echo

    echo System Requirements: Mac OS X 10.8.x with Java 7 update 17 installed.

    echo

    echo run this script as admin and enter user password if required.

    echo

    read -p "Hit ENTER to continue.."

    # BackUp / Rename Current Files

    echo

    echo

    echo [1/5] Backing up installed Java Files..

    echo

    echo

    sudo mkdir "/usr/bin/$NOW"

    # Success Count

    SUC=8

    # Add 1

    # SUC=$(($SUC+1));

     

     

    echo           [1.1/1.8] /usr/bin/javaws

    sudo mkdir -p ~/Documents/Java_Backup/$NOW/usr_bin

    sudo cp -Rf /usr/bin/javaws ~/Documents/Java_Backup/$NOW/usr_bin/

    if [ "$?" == "0" ]; then SUC=$(($SUC-1)); else echo "COPY ERROR"; fi

     

     

    echo           [1.2/1.8] /usr/bin/java

    sudo mkdir -p ~/Documents/Java_Backup/$NOW/usr_bin

    sudo cp -Rf /usr/bin/java ~/Documents/Java_Backup/$NOW/usr_bin/

    if [ "$?" == "0" ]; then SUC=$(($SUC-1)); else echo "COPY ERROR"; fi

     

     

    echo           [1.3/1.8] /System/Library/Frameworks/JavaVM.framework

    sudo mkdir -p ~/Documents/Java_Backup/$NOW/System_Library_Frameworks

    sudo cp -Rf /System/Library/Frameworks/JavaVM.framework ~/Documents/Java_Backup/$NOW/System_Library_Frameworks/

    if [ "$?" == "0" ]; then SUC=$(($SUC-1)); else echo "COPY ERROR"; fi

     

     

    echo           [1.4/1.8] /System/Library/Frameworks/JavaFrameEmbedding.framework

    sudo cp -Rf /System/Library/Frameworks/JavaFrameEmbedding.framework ~/Documents/Java_Backup/$NOW/System_Library_Frameworks/

    if [ "$?" == "0" ]; then SUC=$(($SUC-1)); else echo "COPY ERROR"; fi

     

     

    echo           [1.5/1.8] /System/Library/Java

    sudo mkdir -p ~/Documents/Java_Backup/$NOW/System_Library

    sudo cp -Rf /System/Library/Java ~/Documents/Java_Backup/$NOW/System_Library/

    if [ "$?" == "0" ]; then SUC=$(($SUC-1)); else echo "COPY ERROR"; fi

     

     

    echo           [1.6/1.8] /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin

    sudo mkdir -p ~/Documents/Java_Backup/$NOW/Library_Internet-Plug-Ins

    sudo cp -Rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin ~/Documents/Java_Backup/$NOW/Library_Internet-Plug-Ins/

    if [ "$?" == "0" ]; then SUC=$(($SUC-1)); else echo "COPY ERROR"; fi

     

     

    echo           [1.7/1.8] /Library/Internet\ Plug-Ins/JavaPlugin2_NPAPI.plugin

    sudo cp -Rf /Library/Internet\ Plug-Ins/JavaPlugin2_NPAPI.plugin ~/Documents/Java_Backup/$NOW/Library_Internet-Plug-Ins/

    if [ "$?" == "0" ]; then SUC=$(($SUC-1)); else echo "$0"; fi

     

     

    echo           [1.8/1.8] /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/XProtect.meta. plist

    sudo mkdir -p ~/Documents/Java_Backup/$NOW/System_Library_CoreServices_CoreTypes.bundle_Conte nts_Resources

    sudo cp -f /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/XProtect.meta. plist ~/Documents/Java_Backup/$NOW/System_Library_CoreServices_CoreTypes.bundle_Conte nts_Resources/XProtect.meta.plist

    if [ "$?" == "0" ]; then SUC=$(($SUC-1)); else echo "COPY ERROR"; fi

     

     

    # copy restore script

    sudo cp -f $BDP/scripts/restore-java-backup.sh ~/Documents/Java_Backup/$NOW/

    sudo chmod 775 ~/Documents/Java_Backup/$NOW/restore-java-backup.sh

    echo

    echo

    echo Current Java Files have been backed up for later restore in:

    echo

    TARG=~/Documents/Java_Backup/$NOW/

    echo "Path: "[$'\e[1;32m' $TARG $'\e[00m']

    echo

    echo If you want to restore back, go to the path and open the restore script.

    echo

    read -p "Hit ENTER to continue.."

     

     

    # Remove old Files

    echo

    echo

    echo [2/5] Removing old Java Files..

    echo

    # Warn on backup errors

    if [ "$SUC" != "0" ]; then read -p "At least [ $SUC ] file(s) may have not been backed up: ctrl + c to cancel or ENTER to continue"; fi

    echo

    echo           [2.1/2.8] /usr/bin/javaws

    sudo rm -f "/usr/bin/javaws"

     

     

    echo           [2.2/2.8] /usr/bin/java

    sudo rm -f "/usr/bin/java"

     

     

    echo           [2.3/2.8] /System/Library/Frameworks/JavaVM.framework

    sudo rm -Rf "/System/Library/Frameworks/JavaVM.framework"

     

     

    echo           [2.4/2.8] /System/Library/Frameworks/JavaFrameEmbedding.framework

    sudo rm -Rf "/System/Library/Frameworks/JavaFrameEmbedding.framework"

     

     

    echo           [2.5/2.8] /System/Library/Java

    sudo rm -Rf "/System/Library/Java"

     

     

    echo           [2.6/2.8] /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin

    sudo rm -Rf "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin"

     

     

    echo           [2.7/2.8] /Library/Internet\ Plug-Ins/JavaPlugin2_NPAPI.plugin

    sudo rm -Rf "/Library/Internet Plug-Ins/JavaPlugin2_NPAPI.plugin"

     

     

    echo           [2.8/2.8] /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/XProtect.meta. plist

    sudo rm -f "/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/XProtect.meta .plist"

     

     

    # Copy all Files

    echo

    echo

    echo [3/5] Copying new Java Files..

    echo

    echo

    echo           [3.1/3.6] /System/Library/Frameworks/JavaVM.framework

    sudo cp -Rf "$BDP/System_Library_Frameworks/JavaVM.framework" "/System/Library/Frameworks/"

    if [ "$?" != "0" ]; then echo "ERROR: [$?]"; fi

     

     

    echo           [3.2/3.6] /System/Library/Frameworks/JavaFrameEmbedding.framework

    sudo cp -Rf "$BDP/System_Library_Frameworks/JavaFrameEmbedding.framework" "/System/Library/Frameworks/"

    if [ "$?" != "0" ]; then echo "ERROR: [$?]"; fi

     

     

    echo           [3.3/3.6] /System/Library/Java

    sudo cp -Rf "$BDP/System_Library/Java" "/System/Library/"

    if [ "$?" != "0" ]; then echo "ERROR: [$?]"; fi

     

     

    echo           [3.4/3.6] /Library/Internet Plug-Ins/JavaAppletPlugin.plugin

    sudo cp -Rf "$BDP/Library_Internet-Plug-Ins/JavaAppletPlugin.plugin" "/Library/Internet Plug-Ins/"

    if [ "$?" != "0" ]; then echo "ERROR: [$?]"; fi

     

     

    echo           [3.5/3.6] /Library/Internet Plug-Ins/JavaPlugin2_NPAPI.plugin

    sudo cp -Rf "$BDP/Library_Internet-Plug-Ins/JavaPlugin2_NPAPI.plugin" "/Library/Internet Plug-Ins/"

    if [ "$?" != "0" ]; then echo "ERROR: [$?]"; fi

     

     

    echo           [3.6/3.6] /System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/XProtect.meta. plist

    sudo cp -f "$BDP/Sys_Lib_cs_ct_Resources/XProtect.meta.plist" "/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/"

    if [ "$?" != "0" ]; then echo "ERROR: [$?]"; fi

     

     

    # Set SymLinks

    echo

    echo

    echo [4/5] Set SymLinks..

    echo

    echo

    echo           [4.1/4.2] /System/Library/Java/Support/Deploy.bundle/Contents/MacOS/javaws

    sudo ln -sf "/System/Library/Java/Support/Deploy.bundle/Contents/MacOS/javaws" "/usr/bin/javaws"

    if [ "$?" != "0" ]; then echo "ERROR: [$?]"; fi

     

     

    echo           [4.2/4.2] /System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java

    sudo ln -sf "/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java" "/usr/bin/java"

    if [ "$?" != "0" ]; then echo "ERROR: [$?]"; fi

     

     

    # rechte setzen

    echo

    echo

    echo [5/5] Setting user rights..

    echo

    echo

    echo           [5.1/5.2] /usr/bin/javaws

    sudo chmod 775 "/usr/bin/javaws"

    if [ "$?" != "0" ]; then echo "ERROR: [$?]"; fi

     

     

    echo           [5.2/5.2] /usr/bin/java

    sudo chmod 775 "/usr/bin/java"

    if [ "$?" != "0" ]; then echo "ERROR: [$?]"; fi

     

     

    # fertig

    echo

    echo

    read -p "process done"

    exit

  • 4. Re: Enable Java 6 for Web Start and applets in OS X 10.8?
    fatso83 Level 1 Level 1 (0 points)

    I found a solution and posted it on my blog, detailing the steps that led to the conclusion. Essentially the only real change I made to make web start programs start with Java 6 was make a symlink that replaced the Java 7 symlink:

    sudo ln -s  /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Commands/javaws /usr/bin/javaws
  • 5. Re: Enable Java 6 for Web Start and applets in OS X 10.8?
    islamadel Level 1 Level 1 (0 points)

    It is about 180MB because, it includes the Original Sun Java Installer (53 MB) and Java 6 and 7 (270 MB) required Files for Systems without Java 6. Anyhow, it backs up all Java Settings and Files before and creates a restore script. so if it doesn't work, u can restore back to Java settings anytime.
    The Folders inside the DMG are essential and the script alone is useless.

    I tested it on many OS X 10.8 Machines and I was able to run Java 6 Applets even without restart.

    Gerne