Me quedé horrorizado por la torpeza de las ideas CLASSPATH, JAVA_HOME y PATH, en Windows, para hacer un seguimiento de los archivos Java. Llegué aquí, debido a múltiples JRE, y cómo contentarme con él. Sin información regurgitante, de un tipo mucho más inteligente que yo, prefiero apuntar a su artículo sobre este tema, que para mí, lo resuelve perfectamente.
artículo por: Ted Neward: Multiple Java Homes: Giving Java Apps Their Own JRE
Con el crecimiento exponencial de Java como un lenguaje de programación del lado del servidor ha llegado un equivablent crecimiento exponencial de las herramientas de desarrollo Java, ambientes, marcos y extensiones. Desafortunadamente, no todas estas herramientas funcionan bien juntas bajo la misma instalación Java VM. Algunos requieren un entorno compatible con Servlet 2.1, otros requieren 2.2. Algunos solo se ejecutan bajo JDK 1.2 o superior, algunos bajo JDK 1.1 (y no más alto). Algunos requieren los paquetes "com.sun.swing" de pre-Swing 1.0 días, otros requieren los nombres de los paquetes "javax.swing".
Peor aún, este problema se puede encontrar incluso dentro de la empresa corporativa, como los sistemas desarrollados utilizando Java desde hace apenas seis meses puede de repente "no funciona" debido a la instalación de alguna extensión de Java requerido por una nueva (aparentemente no relacionado) lanzamiento de la aplicación. Esto puede complicar la implementación de las aplicaciones Java en toda la corporación y llevar a los clientes a preguntarse por qué, cinco años después del inicio de los infames problemas de "Instalar-este-app-breaks-my-system" comenzó con los esquemas DLL de Microsoft, todavía no hemos progresado mucho más allá de eso. (De hecho, la nueva iniciativa .NET realidad busca solucionar el problema infame "DLL Hell" se acaba de describir.)
En este documento se describe cómo configurar una instalación de Java tal que una aplicación dada recibe su propia, privada , JRE, permitiendo que múltiples entornos Java coexistan sin tener clientes ( administradores) dementes ...
En Windows, para detener el instalador de Java que reemplaza su instalación de Java existente (primero instalado), debe pásalo STATIC = 1 argumento, es decir, ejecutar desde la línea de comando "jre-6u24-windows-i586-s.exe/STATIC = 1" –
Cuando lo hago "jdk-6u27-windows-x64.exe/STATIC = 1" en Windows 7 64, no se instala, solo muestra una ventana emergente que muestra el uso de msiexec. – yetimoner
Según [este documento de Oracle] (http://docs.oracle.com/javase/7/docs/webnotes/install/windows/jre-installer-options.html) en realidad es 'jdk -... exe STATIC = 1'. Intenté esto y funcionó. – Matt