Extraer msi del Java Runtime Environment
Herramientas, Scripts 26 marzo 2008
A veces nos es interesante extraer un msi de una instalación de java para distribuirla a los equipos de nuestra red a través de un Active Directory o por medio de un script.
De unas versiones a otras de java puede cambiar el procedimiento pero esencialmente es mas o menos lo mismo siempre. Yo he utilizado la versión jre1.6.0_03 para escribir este artículo.
El siguiente procedimiento es para obtener el msi:
- Descarga la versión mas reciente del entorno de ejecución java de instalación offline desde la ubicación siguiente.
- Abre una linea de comandos y sitúate en el directorio donde tienes el fichero jre-6u5-windows-i586-p-s.exe
- Ejecuta “jre-6u5-windows-i586-p-s.exe /?”. Este comando nos muestra las opciones que tenemos para la instalación.
- Ahora sabemos que debemos ejecutar “jre-6u5-windows-i586-p-s.exe /c”. Se lanzará la instalación de java. Comenzará la instalación hasta el acuerdo de licencia que hemos de aceptar. En este punto nos detenemos sin aceptar la licencia.
- Abrimos el explorador de Windows y nos vamos hasta C:\Documents and Settings\tuusuario\Local Settings\Temp. Allí debemos buscar un msi que en mi caso tenia el extraño nombre “8bb9301.msi” y le he copiado a otro sitio para no perderle.
* nota: el nombre del archivo será distinto cada vez que intentes la extracción pero viendo la fecha del fichero msi se puede deducir cual es. - Una vez obtenido el msi ya podemos rechazar la licencia que teníamos pendiente para cancelar la instalación y como comprobación de que el msi que hemos cogido es el correcto debe desaparecer de la carpeta donde lo encontramos.
Ya le tenemos extraido y podemos hacer con el lo que queramos.
Vota este artículo:
Posts anterior y posterior:
Posts Relacionados:
- Previo: « Macro para calendario en Excel.
- Siguiente: WSUS 3.0. Da error al descargar algunas actualizaciones. »

abril 1st, 2008 a las 11:21 am
y si ahora quiero modificar el msi, por ejemplo para deshabilitar las actualizaciones automaticas?
abril 1st, 2008 a las 9:10 pm
Hola Sergio,
debes editar el msi con el algún programa como el WinInstall LE o similar (hay muchos gratuitos por internet).
Al editar el mst puedes cambiar valores simples sin meterte en demasiados líos como:
Java Update mechanism – on {1} or off {0} (Activa actualizaciones automáticas)
EULA – accept the EULA – on {1} or off {0} (Acepta directamente la licencia)
JAVAUPDATE – Java Update check during installation – on {1} or off {0} (chequea la existencia de actualizaciones durante la instalación)
SYSTRAY – System Tray Icon on {1} or off {0} (Muestra u oculta el icono junto al reloj)
Eso te permite obtener un fichero de modificación con extensión mst y la ejecución del archivo de comando quedaría como así:
msiexec /i “Path:/tu/msi/file.msi” TRANSFORMS=”Path:/tu/mst/file.mst”
Mas simple que todo eso también tienes la opción de desactivarlo en el registro de Windows en la clave:
[HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Update\Policy]
“EnableJavaUpdate”=dword:00000000 (0-desactiva y 1-activa)
abril 1st, 2008 a las 9:45 pm
Gracias david!!! de donde has sacado esa info? lo digo por si hay algun campo más interesante a modificar
Mil gracias, usaba Orca para modificar los msi en los que la marca no te da una herramienta para modificarlos de manera ‘limpia’… pero pasare a WinInstall LE a ver que tal
abril 1st, 2008 a las 11:42 pm
Pues la verdad es que no lo he sacado de ningún sitio. Lo tenia apuntado por ahí y con la nueva versión del java lo he desempolvado.
Supongo que si “googleas” un poco algo encontrarás.
P.D. Orca también está muy bien.
abril 8th, 2008 a las 1:25 pm
Hola david sigo teniendo problemas… te cuento
de tus campos en el nuevo java solo aparecen SYSTRAY Y JAVAUPDATE; más que suficiente, porque lo que molesta es eso…
Si modifico directamente el msi y lo guardo luego me da error cargando Data1.cab, supongo que es ‘por seguridad’
Abro con Orca, creo nuevo MST cambio esos dos parametros, guardo mst
y luego hago: msiexec /i “java.msi” /qn TRANSFORMS=”java.mst”
y se instala perfecto pero cuando voy a panel de control abro java-actualiaciones, sigue estando seleccionado Comprobar actualizaciones automaticamente…
abril 11th, 2008 a las 9:43 pm
Hola Sergio,
perdona por mi tardanza en responderte. Tengo que reconocerte que las últimas actualizaciones de Java las he hecho con este script porque no acaban de gustarme la las transformaciones.
Con el script escrito en Autoit3 modifico la entrada del registro para que no se activen las actualizaciones. Ya he actualizado el script a la versión 1.6.0.5. He añadido algunas cosas y he quitado otras.
Si te interesa te lo paso.
El Autoit3 es una pasada, desde que lo descubrí lo utilizo casi para todo lo que sea configurar los equipos de la red.
febrero 9th, 2009 a las 10:16 pm
como hago para actualizar java, explicame de una manera sencilla.
gracias
febrero 9th, 2009 a las 10:23 pm
Ulises, como no des mas pistas…
¿Que tienes que actualizar? ¿tu pc? ¿una red? ¿un dominio?
El java instalado en un windows viene con un “autoupdate” que te muestra un mensaje cuando hay actualización.
enero 3rd, 2012 a las 9:19 pm
Hola, David!! Pues yo me fui por la libre… Te explico: Hice los pasos que sugieres, pero sólo descargué el .exe y posteriormente utilicé un software que se llama “exe to msi converter” ¿Cómo ves? crees que me funcione, lo necesito para instalarlo en un active directory y publicarlo para toda la red.
Gracias!
enero 3rd, 2012 a las 9:49 pm
En mi humilde opinión no te va a funcionar. Debes seguir el procedimiento indicado ya que si no no será el msi original.
Te mando un enlace un poco mas actualizado de como se hace. Este artículo solo habla de extraer el msi.
http://ivan.dretvich.com/2011/06/how-to-package-and-deploy-java-jre-1-6-0_26-via-group-policy/
enero 3rd, 2012 a las 10:38 pm
¿No será el .msi original? Pero se supone que el msi lo generé con el converter a partir del exe de java. ¿No crees que funcione? mmm… voy a revisar el artículo que me compartes. Te agradezco mucho tu amabilidad y atención.