Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I'm just tweaking out my new Windows 7 laptop and wanted to disable the automatic Java updating (and thus kill the silly jusched.exe background process), but I can't seem to get it to actually turn it off.

I found the Java Control Panel applet and found the settings on the Update tab that should control it. I can turn them off, apply them, and close the dialog successfully. But if I just open the dialog backup again right away, I see that the changes weren't actually made. I've tried it numerous times and it just doesn't take. What's up with that?

I also tried to disable the icon in the system tray and got the same effect. Changing the size of the Temporary Internet Files cache work however.

Any ideas? Thanks!

share|improve this question
1  
Just a bit of follow-on for future readers: I'm using the x64 version of Windows 7 and I think that's where the problem is coming from. My guess is that the Java control panel applet is trying to change the settings in the wrong places since I installed the 32 bit Java on my 64 bit machine (IE typically runs as a 32 bit process even under the 64 OS so I wanted the 32 bit version of Java). –  Scott Bussinger Jun 3 '09 at 17:45
2  
Also being discussed at Super User: superuser.com/questions/130961 –  Chris W. Rea Apr 17 '10 at 15:32
    
Guess what! In the latest version of Java JRE 6, the frickin "Update" panel option has been REMOVED! –  hopeseekr Mar 1 '11 at 14:35
    
@hopeseekr It's back. :) –  muntoo Mar 18 '11 at 23:04
    
@ScottBussinger: exact same problem with a pure 32 bits Windows 7 system. –  MarcH Jun 20 '12 at 20:25

9 Answers 9

up vote 69 down vote accepted

Actually this problem is due to the control panel requiring Admin Privileges to allow the java control panel to save your settings (hasn't been fixed for ages, thanks to sun micro).

First, you need to find the Java Control Panel executable, in one of the following locations:

C:\Program Files\Java\jre[version]\bin\javacpl.exe

or

C:\Program Files (x86)\Java\jre[version]\bin\javacpl.exe

The path will differ depending on your system's architecture and which version of Java you have installed. For example, a 32-bit version of Java 7 installed on a 64-bit version of Windows will have it in:

C:\Program Files (x86)\Java\jre7\bin\javacpl.exe

Once you've found the file, right-click it and select "Run as administrator".

From there, un-check "Check for Updates Automatically" on the Update tab and click OK. You can verify that the setting has been applied by navigating to the same screen as you normally would through the Control Panel.

You can also check your running processes to see that jusched.exe is no longer running - it was automatically terminated when you clicked OK.

share|improve this answer
3  
Guess what! In the latest version of Java JRE 6, the frickin "Update" panel option has been REMOVED! Talk about MALWARE. –  hopeseekr Mar 1 '11 at 14:34
    
@hopeseekr Agree with you! Now the answer is not applicable for JRE 6... @Lai Is there any work-around for us? –  Nam G VU Jun 24 '11 at 18:45
    
Java 7 has the Update tab again. –  Iszi Jul 3 '12 at 18:15
    
The update tab in the control panel is there in 32-bit versions of java 6; 64-bit requires something else...i'm not entirely sure what :( –  Dan Pritts Apr 23 '13 at 6:06
    
actually this does not work for java7 versions –  inf.ig.sh Jun 14 '13 at 9:20

You can disable the update using the registry key,

HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy\EnableJavaUpdate

or if your using 64bit Windows

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Update\Policy\EnableJavaUpdate

Set to 0 to disable this key.

The advantage of this method is that it disables it for all users.

share|improve this answer
2  
This is the only option that works since JRE 6 Update 21. –  hopeseekr Mar 1 '11 at 14:35
    
I opened HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy and it doesn't have any key or value called 'EnableJavaUpdate'. Only (Default), Country, PostStatysUrl keys. –  Spiderman Mar 4 '11 at 21:04
9  
on a Win64 (running windows 7), this key is now: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Update\Policy\EnableJavaUpdate –  ekawas Jun 26 '11 at 14:57
    
...does the WOW6432Node option control the 64bit version as well though? –  Ashley Steel Apr 11 '12 at 9:25
    
Does this approach still work in JRE u33? –  blak3r Oct 11 '12 at 22:12

Just remove the program from starting up in the registry - delete if from HKLM\SOFTWARE\Microsoft\CurrentVersion\Run

share|improve this answer
    
Thanks, I knew I could remove the registry entry, but I can't figure out why doing it the "right" way doesn't work. I figure it must be some sort of permissions issue. –  Scott Bussinger May 29 '09 at 6:39
    
This is the hacky but quick answer. See soulless's answer for the supported answer. –  Ryan Bolger Jun 24 '09 at 15:40
1  
You can always just delete that executable too. Just worth mentioning. –  sinping Apr 17 '10 at 7:36

On Windows 7 OEM

On a 64bit system: run C:\Program Files (x86)\Java\jre6\bin\javacpl.exe with Administrator priveledges

On 32 bit system: run C:\Program Files\Java\jre6\bin\javacpl.exe with Administrator priveledges

To do this, follow the path in your Windows Explorer browser and Right Click javacpl.exe, then select "Run as Administrator"

Uncheck the "Check for Updates Automatically" Update feature and click on "Never Check" and you are done.

share|improve this answer
    
As mentioned in other answers, that check box seems to have gone missing around 1.6.0_21 –  jimbojw Nov 9 '11 at 13:27

Download Autoruns (live.sysinternals.com/autoruns.exe) from Sysinternals / Microsoft, and uncheck "SunJavaUpdateSched" under the tab "Logon".

share|improve this answer
    
Didn't show up under Logon, but did under Everything. –  rwallace Sep 7 '11 at 23:47
    
Sysinternals tools are excellent. –  jimbojw Nov 9 '11 at 13:26

Here's my scripted install for Java that disables the auto-update component at install time: http://blog.stealthpuppy.com/unattended/unattended-install-sun-jre-16-update-10

share|improve this answer

You can probably do this from System Configuration (Run: msconfig). In the Startup tab uncheck the unwanted service.

share|improve this answer

Warning: It seems the next time you install a newer java, it turns back on the "check for updates"; at least it did for me going Java6-update15 to Java6-update16 on windows7.

So for now, the only way I have found to permanently keep disabled "check for updates" is to do scripted installs, such as forums.sun.com/thread.jspa?threadID=5198773 or the one above:

blog.stealthpuppy.com/scriptcorner/unattended-install-sun-jre-16-update-10

There are lots of gotch-ya's to getting check-for-updates to stay disabled for all users, and the best solution seems to be a http://www.appdeploy.com/messageboards/tm.asp?m=33488 involving deployment.properties file during each install.

share|improve this answer

I needed to do this in an enterprise Active Directory environment on a lot of machines. I found quite a bit of posts around the internets, mostly detailing in various ways changes to registry values EnableJavaUpdate and EnableAutoUpdateCheck in HKLM and HKCU. While the former worked, it wasn't what I wanted because it disabled the Update tab in the Java control panel which I wanted to retain for manual runs. Flipping EnableAutoUpdateCheck to 0 did not work regardless of which hive I put it in. I don't know if there was a change recently in how Java stores it, but that value is not even DWORD typed on my Windows 7 box. It's a binary value, which I tried duplicating and pushing to other workstations but that did not work. I ended up simply preventing jusched.exe from running using the following GPO setting:

Users Config > Policies > Admin Templates > System > Don't run specified Windows applications

That prevents the update from running automatically but retains the ability to manually run it.

share|improve this answer

protected by Jeff Atwood Jun 8 '10 at 5:47

Thank you for your interest in this question. Because it has attracted low-quality answers, posting an answer now requires 10 reputation on this site.

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.