Java

From MozillaZine Knowledge Base
Jump to navigationJump to search

Java is a programming language originally developed by Sun Microsystems (now Oracle). Many web pages use Java applets for interactive content such as online games. To run these Java applets, you need the "Java Runtime Environment" ("JRE") installed and enabled. Note that Java is not the same as JavaScript. See JavaScript is not Java for more information.

Starting in Firefox 3.6, Java will not work unless you are using the Next-Generation Java Plug-In (included in Java 6 Update 10 and above). [1]

Important: Mozilla adds outdated or insecure plugins to its Add-ons Blocklist as a security measure. Depending on the version of Java and your Mozilla browser, the Java plugin may be disabled in the Firefox or SeaMonkey Add-ons Manager or the Java plugin may require Click to Play (CTP) activation. See this blog post for details. [2] [[3]

Testing Java

Visit one of these Java test pages to see if Java is working in your browser. In current Mozilla browsers, you'll need to activate Java. With recent Java versions, you'll also need to confirm that you want to run Java, if prompted.

Note: At time of writing, the Java test pages listed below will cause an "Application Blocked" error when Java is activated, due to security changes in Java 7 Update 51:

See Java security prompts (below) for more information on Java prompts and security blocks.

Enabling Java

If Java is installed but isn't working, make sure that the Java plugin is enabled in the Add-ons Manager Plugins list (see Managing installed plugins for more information). [4]

  • SeaMonkey: "Tools -> Add-ons Manager -> Plugins -> Java plugin
  • Firefox: "(Firefox button or Tools menu) -> Add-ons -> Plugins -> Java plugin

The Java plugin name shown will depend on your operating system and Java version. On Mac OS, the Java plugin is shown as Java Applet Plug-in (on Mac OS X 10.6 or below, it may also be listed as Java Plug-in 2 for NPAPI Browsers). On Windows, the Java plugin will be listed as Java(TM) Platform SE <version> and underneath, it will show "Next Generation Java Plug-in <version> for Mozilla browsers", where <version> refers to the Java plugin version. The Java plugin must be detected and enabled in the Firefox or SeaMonkey Add-ons Manager for Java applets to work in the browser.

On Windows with the Java 7 Update 25 plugin enabled, the plugin entry would look like this in Firefox 22 (If the Java plugin is disabled, the entry will be "greyed out" with an "Enable" button.)

Note: Starting in Firefox 23 and SeaMonkey 2.20, the button to "Disable" or "Enable" plugins has been replaced with a drop-down menu with the click-to-play options "Always Activate" to enable, "Ask to Activate" to set click-to-play, and "Never Activate" to disable (bug 549697).

After enabling Java, test Java again:

The Java Deployment Toolkit plugin, which is installed along with Java, does NOT need to be enabled for Java applets to work. If you only see the Java Deployment Toolkit plugin listed in the Add-ons Manager, then Java is not properly detected.

If the Java plugin does not appear in the Add-ons Manager even though Java is installed

If the Java plugin does not appear in the Add-ons Manager, even though Java is installed, first do the following before reinstalling Java or trying other solutions:

  • Open the Firefox profile folder or the SeaMonkey profile folder, then completely close Firefox or SeaMonkey and delete (or rename) the "pluginreg.dat" file. A new pluginreg.dat file will be generated when you restart the browser. Any plugins you may have disabled in the Firefox or SeaMonkey Add-ons Manager will be re-enabled. [5]
  • On Windows or Mac OS (OS X 10.7.3 and above), If Java 7 is installed, make sure that "Enable Java content in the browser" is selected in the Java Control Panel's Security tab (see below).
  • On Mac OS (OS X 10.7.3 and above) the Java 7 plugin will only run in 64-bit browsers so confirm that you aren't running Firefox or SeaMonkey in 32-bit mode. Open the Applications folder in Finder, control-click (right-click) the Firefox.app or SeaMonkey.app and select "Get Info". Make sure the box in front of "Open in 32-bit mode" is not checked (if it is, remove the check-mark). [6] [7]
  • On 64-bit Windows, if you only have the 64-bit version of Java installed, the Java plugin will not be available since current Firefox and SeaMonkey releases are 32-bit browsers. You'll need to install the 32-bit Java version (see below). [8]
  • On Windows, if the Java(TM) Platform SE plugin is not detected and you recently updated to Java 7 Update 10 or Update 11, uninstall JavaFX, if installed (see below).
  • On Windows, Mozilla browsers use plugin scanning to locate installed plugins in locations external to Firefox or SeaMonkey. Java and other plugins in directories specified in the Windows registry for PLIDs will not be detected if the preference plugin.scan.plid.all has been set to "false". To resolve, open about:config and reset the preference to "true" (the default value), then restart Firefox or SeaMonkey. [9]

Disabling Java

To disable the Java plugin in your Mozilla browser, open the Add-ons Manager, find the Java plugin entry as described above and then, depending on the browser version, click the "Disable" or "Never Activate" button.

Enabling and disabling Java from the Java Control Panel

Applies to Windows or Mac OS X 10.7.3 and above

Starting in Java 7, the Java Control Panel includes the Security option, "Enable Java content in the browser", which is selected by default. De-selecting this option will prevent Java applets from running in any browser and the Java plugin will no longer appear in the Firefox or SeaMonkey Add-ons Manager or about:plugins list. To view or change this option, click the Java icon in the Windows Control Panel or Mac OS X System Preferences to open the Java Control Panel, then select the Security tab. See this Java Help page for details. [10] [11] [12]

If Java is installed and enabled but does not work

  • Mac OS: On Jan 31, 2013, Apple blocked outdated Java web plugins as a security measure. To update Java, see above. Note that on Mac OS X 10.6 if your Java plugin is outdated, web pages with Java content will show an "inactive plugin" link that will open Apple's Software Update. Installing "Java for Mac OS X 10.6 Update 12" will resolve the issue. [13] [14] [15] [16]
  • Firewalls and other Internet security, privacy, and content-filtering software can block Java in all browsers; for example:
    • The AVG "LinkScanner" component can block Java. As a workaround, uncheck the option "Enable Online Shield" or "Enable Surf-Shield" (depending on AVG version) in LinkScanner. [17] [18]
    • The "Mobile Code Control" feature in some versions of ZoneAlarm and CA (Computer Associates) Firewall or CA Internet Security will block Java and other content, if enabled. [19] [20] [21] [22]
    • The "Web Shield" feature in Online Armor 4.5 and below, can block Java (Web Shield content filtering was removed in Online Armor 5). [23] [24] [25]
  • If Java starts to load but fails, it's possible that Java cannot obtain proxy information from the browser or that network settings are misconfigured. Check "Network Settings" in the Java Control Panel (it should be set to "Use Browser Settings"; see this Java article for details) and make sure that your browser's Advanced "Network" or "Proxies" options/preferences are correct. You could also try connecting your computer to a different network, if possible, to see if Java works on a different network connection. [26]
  • Java may not work if you are logged into a limited Windows XP user account. Enabling administrative rights resolves the issue, although this defeats the purpose of using a limited account. For a registry fix, see this answers.microsoft forum topic. More here.
  • If Java does not work in Firefox or SeaMonkey but it works in other browsers, an extension such as NoScript can be blocking Java. [27] To troubleshoot Java issues with installed extensions, go to the Add-ons manager Extensions list (e.g., "Tools -> Add-ons -> Extensions), click the Disable button for each extension and then restart the browser. Alternately, test for extension issues by restarting the browser in Safe Mode, which temporarily disables all extensions.
  • If the problem occurred after installing or updating Java on Windows, see Windows installation issues (below) for possible solutions.

Java downloads

Mac OS: You can download Java from Apple Support Downloads (Java 6 and below). On Mac OS X 10.7.3 (Lion) and above, Java 7 is available here or from this download page. See How do I get Java support for Mac? for more information.

Windows and Linux: You can download Java here or you can select the offline (full) installer for your operating system from this download page. (If you are looking for Java 6, see the Java 6 FAQ page). You can also download an offline installer using the "JRE" download link on Oracle's Java SE Downloads. Important! Even if you have a 64-bit operating system, you need the 32-bit (x86) Java download for 32-bit browsers. On Windows, make sure you select the 32-bit JRE since Firefox and SeaMonkey official releases are 32-bit (e.g., select "Windows x86 Offline" for the offline installer linked from Oracle's Java SE Downloads page). See below for more information on installing or updating Java on Windows. See 64 bit builds for more information about 64-bit versions of Mozilla applications. [28] [29] [30]

Installing or updating Java

On Mac OS X

Installing Java:

  • Mac OS X 10.6 and below: Java is included with the operating system on OS X 10.6 (Snow Leopard) and below.
  • Mac OS X 10.7 and above: Starting with OS X 10.7 (Lion), Apple does not provide a Java runtime by default. If you open "Applications -> Utilities -> Java Preferences" or if you launch an application that requires Java (such as Adobe Photoshop) and Java is not installed, OS X will prompt you to install Java (details here).
  • Mac OS X 10.7.3 and above: You can download Java 7 from http://java.com/download or from this manual download page. See How do I install Java for my Mac? for details.

For more information, see How do I get Java support for Mac?.

Updating Java:

  • For Java provided by Apple, you can use the Mac OS X Software Update feature for updates through Java 6.
  • Java 7 is available from java.com for Mac OS X 10.7.3 (Lion) and above (see Java support for Mac). Starting with Java 7 Update 6, you can launch the Java Control Panel by clicking the Java icon in System Preferences, then go to the Update tab to initiate an update check. See How do I update Java for my Mac? for more information.

Note: The Java Embedding Plugin has been bundled with Mac distributions of older Mozilla browsers, including Firefox 3.x and SeaMonkey 2.0. This utility allows browsers other than Apple's Safari to use the most recent versions of Java on Mac OS X. [31] The Java Embedding Plugin is no longer needed in newer Mozilla browsers such as Firefox 4 and is no longer included. [32] [33] [34]

On Linux

For Linux installation instructions, see How do I download and install 32-bit Java for Linux Platforms? or What are the Linux 64-bit installation instructions for Java?

See Manual Installation and Registration of Java Plugin for Linux at oracle.com for additional information.

On Windows

The Java Update feature automatically checks for updates at scheduled intervals and notifies you when an update is available so that you can install it. You can also update Java from the Java Control Panel, or by manually downloading the latest update.

Java Control Panel Update tab

If you have administrative privileges, you can check for updates and install them from the Java Control Panel,accessible via "Start -> Control Panel -> Java (32-bit)" or from the Windows Start Menu ("Start -> All Programs -> Java -> Check for Updates"). You can also access the Java (32-bit) Control Panel by opening the file "javacpl.exe" located in the Java installation folder (e.g., on 64-bit Windows with 32-bit Java 7 installed, open the file "javacpl.exe" in the C:\Program Files (x86)\Java\jre7\bin\ folder). You can then go to the "Update" tab and click the "Update Now" button, to see if an update is available.

On 64-bit Windows, you can have both 32-bit Java (needed for 32-bit browsers like Firefox and SeaMonkey) and 64-bit Java (needed for 64-bit browsers, such as 64-bit Internet Explorer). See this Java help page for details. Note: Starting with Java 8 Update 20, the Update tab in the Java Control Panel enables users to automatically update 64-bit JREs (in addition to 32-bit versions) that are installed on their system. The Update tab is not available in earlier 64-bit versions of Java. [35]

If you don't need 64-bit Java, there is no reason to have it installed. If both 32-bit and 64-bit versions of Java are installed, the Windows Control Panel will display only the 64-bit Java Control Panel. In such cases, you can access the 32-bit Java Control Panel for Java 7 by running C:\Program Files (x86)\Java\jre7\bin\javacpl.exe (press "Windows key + R" to open the Run box). Alternately, you can update Java using the manual update method (see below) by downloading the latest update. [36] [37]

Manual install or update

  1. For the latest Java, go to Java.com and click on the Free Java Download button.
  2. Click on the Download Now button and save the Java installation file to your computer.
  3. Close your browser and open the file you downloaded to start the online installation process.

If you prefer an offline installation, go to the Java Downloads page (see above for links) and save the Windows Offline installer to any convenient location, close your browser and run the installer. [38]

Starting with Java 6 Update 10, Java updates patch the current version by default instead of adding an additional version. This prevents an accumulation of unused and potentially insecure Java versions. [39] [40]

Windows installation issues

If you have problems installing or updating Java or if Java doesn't work afterwards, first restart your browser (or reboot the computer), make sure that Java is enabled (see above), and then test Java again. [41]. The Windows Online Installation and Update FAQ, the Java Help Center, and this help page on Error Messages may also help. If you still have problems, try the following solutions.

Use Internet Explorer to install Java

If you have problems installing the latest version of Java, a user reports success installing Java online using Internet Explorer, after first completely uninstalling Java from his system. Opening Internet Explorer and then visiting a page that uses the Java plugin, such as this javatester.org page, should detect that Java isn't installed and offer to install it. Alternately, go to the Java.com download page using Internet Explorer and run the online installer (details here). [42] [43] [44]

Note: If you visit a page that uses Java with your Mozilla browser and it detects that the Java plugin is missing, the Plugin Finder Service (PFS) may offer an outdated version. (Mozilla is planning to either remove the PFS or change the process for downloading missing plugins, at some future date.) [45] [46] [47] [48]

Uninstall JavaFX

If the Java (TM) Platform plugin for your installed Java version is not detected after updating to Java 7 Update 10 or above, this can be caused by a standalone installation of JavaFX that prevents the Java plugin from being properly registered. JavaFX used to be bundled with earlier versions of the Java 7 JRE (Java Runtime Environment) but is now included as part of the JRE. To resolve, follow the instructions given here to get to the Windows Control Panel list of installed programs and uninstall JavaFX. (This java.com help page recommends uninstalling all Java versions, including JavaFX, and then reinstalling the latest version of Java.) [49] [50] [51] [52] [53]

Add back missing registry key

Note: Updating to the latest Java 7 release after Java 7u13 may resolve this issue (see Oracle's bug 8005410) so be sure to update Java before trying a registry fix.

If the Java (TM) Platform plugin is no longer detected after updating to the latest Java 7 JRE and the previous suggestion to uninstall JavaFX doesn't resolve the issue (or if there is no JavaFX listed to uninstall), your Java 7 installation may be missing this Windows Registry key, which Mozilla browsers need to detect the Java plugin:

  • (64-bit Windows) HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MozillaPlugins\@java.com/JavaPlugin
  • (32-bit Windows) HKEY_LOCAL_MACHINE\SOFTWARE\MozillaPlugins\@java.com/JavaPlugin

The problem has been reported by users after updating to Java 7 Update 10 (7u10) or Update 11 (7u11). If you're comfortable with a registry fix, do one of the following:

Option 1: Add back the missing registry key using a .reg file containing the code posted in this post for Java 7 Update 10 on 64-bit Windows (you'll need to change "Version"="170_10" to "Version"="170_11" for Java 7 Update 11). A list of the needed registry keys for Java 7 Update 11 on 32-bit Windows has been posted here. The first line of the .reg file MUST be Windows Registry Editor Version 5.00 so you should position your mouse cursor at the beginning of that line, then select and copy the rest of the code. Alternately, uninstall Java 7u10 or 7u11, install an earlier Java version (e.g., Java 7u9) to get the registry key back, use the Windows Registry editor (regedit.exe) to export the registry key, install the latest Java 7, edit the version numbers in the .reg file you exported earlier and then run the .reg file to merge it into the registry. [54] [55] [56] [57]

Option 2: Uninstall ALL versions of Java and JavaFX, use a registry editor to delete these registry keys, if they are not empty, and then reinstall the latest Java 7. [58] [59]

  • HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment
  • HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Web Start
  • HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Plug-in
Remove outdated Java files from the browser plugins folder

If Java is installed and enabled (see Enabling Java, above) check about:plugins to make sure that older Java plugins are not being detected from other locations, such as the installation directory browser plugins folder, which no longer exists by default. For example, if Java 7 Update 45 is installed, about:plugins should show Java(TM) Platform SE 7 U45 File: npjp2.dll and, in current Mozilla browsers, the full path to the plugin location (see the linked article for more information). Having Java files from previous versions in the browser plugins folder has been known to prevent the current Java version from working and those outdated Java files should be removed. [60][61]

Java-related issues

Note: Mozilla browsers use the "Next-Generation Java Plug-In" (included in Java 6 Update 10 and above) to display Java content. See this Java.com help page for details.

Java content requires click-to-play activation

Mozilla adds unsafe Java plugin versions its Add-ons Blocklist as a security measure. Depending on the Java plugin and Mozilla browser version, this may result in the Java plugin being disabled in the Add-ons Manager or, in current Firefox and SeaMonkey versions, Java content may require "click to play" activation. Starting in Firefox 26, the Java plugin defaults to "Ask to Activate" (click to play activation required) in the Add-ons Manager Plugins list, even though the latest version of Java is installed and that version is not considered vulnerable (bug 941137). See How to allow Java on trusted sites at Mozilla Support and this blog post for more information. [62] [63]

Java security prompts

Starting in Java 7 Update 21, even though you activate Java, you'll still see a security dialog asking you to confirm that you want the Java content to run. See the Java Help page What should I do when I see a security prompt from Java? for more information and screenshots.

If you see a message such as "Application Blocked by Security Settings" with no option to run Java, then Java has blocked the content for security reasons. Starting in Java 7 Update 51, RIAs (Web Start applications and applets) with certificates from an untrusted source (self-signed) and those with no certificate or missing application Name and Publisher information (unsigned), are blocked by default. Sites that would normally be blocked based on your Java Security settings can be added to the Exception Site list via the Java Control Panel, as explained here and in the Java Help page How can I configure the Exception Site List?. The Java Help page Why are Java applications blocked by your security settings with the latest Java? includes steps to Add URLs to the Exception Site list and mentions some common Java applications that are now blocked. For more information and screenshots, see this wiki.albany.edu article and this wordpress article. [64] [65] [66] [67][68] [69]

Java Deployment Toolkit plugin

Installing Java 6 Update 10 or above adds a "Java Deployment Toolkit<version>" plugin, which is used for Java version detection by Java applets and applications that require a specific version of Java. This plugin is not needed to run Java applets and can be disabled in the Add-ons manager. Java Deployment Toolkit plugin versions previous to 6.0.200.2 are insecure and are now blocklisted (bug 558584). Java 6 Update 20 or later updates should remove the vulnerable plugin "npdeploytk.dll" and replace it with a fixed version named "npdeployJava1.dll"; however, in some cases, not all copies of the older plugin are removed. [70]. To manually remove the older, vulnerable plugin, find and delete all copies of "npdeploytk.dll" (or rename to "Xnpdeploytk.dll"). Note that, in July 2013, Mozilla blocked all versions of the Java Deployment Toolkit, requiring "click to play" activation (bug 636633). [71] [72] [73][74]


Java applet causes browser process to remain in memory after exiting the browser

Sometimes after running a Java applet and then exiting Mozilla Suite, SeaMonkey or Firefox, the browser process may remain in memory [75] [76]. Attempting to restart the browser without ending the existing browser process will result in a profile in use error or, in Firefox 1.5 and later, a message that Firefox is already running but not responding. Allowing the Java applet to fully load before exiting the browser may help prevent the problem from occurring [77]. Exiting the page with the Java applet (click the "Back" button or go to a different web page) before closing the browser may also help [78]. To resolve the issue, try updating to the latest JRE version.

Java applet causes backwards or jumbled typing in text boxes

Sometimes running a Java applet during the browser session can cause the cursor to behave erratically when you type in a text field, so that your text will display backwards or jumbled. Additionally, you may not be able to copy text to the clipboard. If you are having these problems, exit the browser and end its process if necessary (see above) then restart your Mozilla application. [79] [80]

Java Console

The Java installer places a Java Console extension in the Firefox installation directory and uninstalling Java removes the extension. Starting in Firefox 3.6, a "Java Console <version>" extension will appear in the Add-ons Manager for each installed version of Java (in previous Firefox versions, these extensions were hidden). [81] The Java Console extension is not needed for Java to work and can be disabled or removed from the Extensions list (see below).

Starting with Java 6 Update 10, the Java Console menu item in older versions of Firefox ("Tools -> Java Console") and SeaMonkey 2 ("Tools -> Web Development -> Java Console") is nonfunctional and no longer opens the Java Console (current versions of Firefox and SeaMonkey no longer include this menu item). This is by design. [82] [83] If you don't use the Java Console, there is no need to do anything. The Java article How do I enable and view the Java Console? explains how to open the Java Console, if you need to use it.

Resolved issues

Multiple Java Console extensions

Starting in Firefox 3.6, a "Java Console <version>" extension will appear in the Firefox "Tools -> Add-ons -> Extensions" list for each Java version installed (previous to Firefox 3.6 these extensions were hidden). [84] Uninstalling Java should also remove the Java Console extension. Updating Java 6 Update 10 or later removes the previous Java version but may not uninstall the Java Console for that version, causing Firefox to accumulate multiple Java Console extensions.

The Java Console extension is not needed for the Java plugin to work (see above) and can be disabled or removed from the Extensions list. On Windows, if the uninstall button to remove the Java Console extension is "greyed-out" or missing, exit Firefox, reopen Firefox from the context (right-click) menu "Run as Administrator" option, then try again. [85] [86]

You can also manually remove unwanted extensions by opening the installation directory "extensions" folder and deleting the associated subfolder (e.g., to uninstall the Java Console 6.0.18 extension on 64-bit Windows, open the C:\Program Files (x86)\Mozilla Firefox\extensions\ folder and delete the "{CAFEEFAC-0016-0000-0018-ABCDEFFEDCBA}" subfolder). [87] [88] In Firefox 4 and above, the Firefox installer and updater should automatically remove Java Console extensions from the installation directory "extensions" folder but may not always do so; this should be fixed in Firefox 8. [89] [90]

Plugin Check reports outdated Java has been disabled when it is up-to-date or when Java is not installed

This bug is now resolved, as reported in bug 790008 #33 (2013-04-25), and should no longer be an issue.
Due to a bug, Mozilla's Plugin Check page will display the message, Missing JAVA? For your safety, Firefox has disabled your outdated version of Java. Please upgrade to the latest version. even if your Java is up-to-date, if you manually disable the Java plugin in the Add-ons Manager. You will also see that message if Java isn't even installed. (screenshot) [91] [92]

Mozilla PluginCheck webpage identifies the latest Java 7 plugin as vulnerable

The bug causing this issue was fixed on May 9, 2014.
Due to a bug, Mozilla's Plugin Check & Updates webpage was reporting the Java plugin to be vulnerable, even though the latest Java 7 version is installed (bug 985968). Because of this problem, the following message was added to the top of the PluginCheck page: We are aware of a problem detecting current versions of the Java plugin and misreporting them as vulnerable. We’re working to correct this error. In the meantime, you can visit the Java website to download the latest version. If your installed version of the Java plugin is the same version as the download offered at Java.com (e.g., Java(TM) Platform SE 7 U55 is installed and the Java.com download page is offering Version 7 Update 55) then no action is needed. You can verify that you have the recommended version of Java by visiting this Java.com test page.

External links