Last updated on March 30th, 2023 at 05:13 pm
We have previously written a guide on how to deploy Java updates to client machines using System Center Update Publisher (SCUP) and WSUS/Configuration Manager which you may have seen here:
Java Updates using WSUS/SCCM/SCUP and Deployed using Windows Updates
However, we have been looking into a quicker and better way of doing this as we do not want to have to keep manually inputting the Installable Rules in SCUP. So we started doing some testing in my lab and we have now found a much easier solution to deploying Java updates via Windows Updates. Please carry on reading as this is going to be a long post, but very much worth the time!
Note that this process will be using SCUP to create the update and then you can import that newly created update into WSUS or into Configuration Manager for deployment to your Windows Update clients.
Prerequisites
As with the previous guide, before starting this process, you must ensure that you have SCUP installed and configured correctly. You must also ensure that you have your WSUS Self Certs set up in your organisation, a guide on how to do this is below:
How to deploy certificates for custom WSUS updates to client machines
As we write this post, the current version is Java Client 7 Update 55 – however, for future reference, this process should work with all future releases.
Instructions
Firstly, you need to gather the Java MSI file, to do this you can follow this guide below:
Java Client Downloads and Instructions
Although this guide is for the MSI for version 9, the process remains exactly the same for gathering version 55.
Once you have the MSI file for the version you want to create and you have your certificates setup and SCUP installed, you can now proceed to create the update in SCUP.
System Center Update Publisher
Go into SCUP and right click on All Software Updates and click the Create Vendor Option:
You can call this what you like, but we are going to enter the vendor as “Oracle”.
You should then right click on the vendor name you created and click Create Product. You can enter what you like here but we am going to use “Java Client”. You should now have a tree setup similar to the one below:
Now you should highlight the Product name folder and click the Create button and select Software Update:
You now have a wizard to complete with all your custom settings in for the update. To start with, you now need to place your earlier acquired Java MSI file into a network share that is accessible by any user that will need to receive this update. Once you have placed the MSI file in a shared location, you should browse to this location and select the MSI file and enter the location in the Download URL like below:
You can then click next and enter the Software Update information as per your own preferences:
Click next and continue to enter your custom information:
You should then click next and you can choose to add Prerequisites and Superseded Updates or continue without them.
You will then get to the Installable Rules and Installed Rules sections, where you will find that these are now pre-populated with the MSI generated codes, so there is now no need to have to create these based on registry settings:
You will then get to the Summary page where you can complete the creation wizard:
You then will see the update available to you in SCUP, so you now need to publish the update to WSUS or Configuration Manager.
To do this, highlight the update and click the Publish button on the ribbon:
You will then need to complete the Publish wizard. On the first page, click Full Content and then click Next:
You may get a certificate box pop up like the one below, you can click Accept on this box:
You can then complete the wizard to the end.
Client Windows Updates
This update will now be available to your clients via Windows Update once you have synchronised your WSUS or Configuration Manager server:
Feedback
We would love to hear your feedback on this article so come and join us on Facebook or Twitter and let us know what you think!
Is there anyway to pass a value to remove the old Java version during the install? On my Java Update I’ve set the command line option to “REMOVEOUTOFDATEJRES=1” but it doesn’t seem to work?
i have an issue when i go to publish it states “updates failed to publish, updates (include dependencies) failed to expire, failed due to incorrect file digest, failed to invalid cert, invalide metadata, etc…HELP?
Not seen that before – can you post a screenshot of the error – also confirm what version you are using, are you using MSI or offline EXE?
Is there anyway to pass a value to remove the old Java version during the install? On my Java Update I’ve set the command line option to “REMOVEOUTOFDATEJRES=1” but it doesn’t seem to work?
Is there anyway to pass a value to remove the old Java version during the install? On my Java Update I’ve set the command line option to “REMOVEOUTOFDATEJRES=1” but it doesn’t seem to work?
i have an issue when i go to publish it states “updates failed to publish, updates (include dependencies) failed to expire, failed due to incorrect file digest, failed to invalid cert, invalide metadata, etc…HELP?
Not seen that before – can you post a screenshot of the error – also confirm what version you are using, are you using MSI or offline EXE?
i have an issue when i go to publish it states “updates failed to publish, updates (include dependencies) failed to expire, failed due to incorrect file digest, failed to invalid cert, invalide metadata, etc…HELP?
Not seen that before – can you post a screenshot of the error – also confirm what version you are using, are you using MSI or offline EXE?