Foros del Web » Programación para mayores de 30 ;) » Java »

clases java fuera de instalacion de jre

Estas en el tema de clases java fuera de instalacion de jre en el foro de Java en Foros del Web. Me gustaría saber si es posible instalar mis clases java extras en otra carpeta que no sea lib\ext dentro de donde esta jre porque cada ...
  #1 (permalink)  
Antiguo 06/11/2008, 14:04
Avatar de haggenx  
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 823
Antigüedad: 17 años, 2 meses
Puntos: 24
Pregunta clases java fuera de instalacion de jre

Me gustaría saber si es posible instalar mis clases java extras en otra carpeta que no sea lib\ext dentro de donde esta jre porque cada vez que lo actualizo tengo que mover mis archivos que usan otras aplicaciones a la nueva, seria muy bueno que al correr mis programas yo le diga donde estan las clases extras y las enlace, no hace mucho que uso java asi que tal vez si me dicen que parametro le paso lo intentare, gracias
  #2 (permalink)  
Antiguo 07/11/2008, 03:21
 
Fecha de Ingreso: agosto-2007
Mensajes: 14
Antigüedad: 16 años, 8 meses
Puntos: 0
Respuesta: clases java fuera de instalacion de jre

Puedes poner la estructura de directorios de tu proyecto para aclararme de que es lo que quieres????
  #3 (permalink)  
Antiguo 07/11/2008, 08:30
Avatar de haggenx  
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 823
Antigüedad: 17 años, 2 meses
Puntos: 24
Respuesta: clases java fuera de instalacion de jre

Antes que nada gracias de antemano, mira yo tengo mi carpeta de proyecto llamada sct (iniciales del proyecto) a partir de la cual hay otra carpeta llamada sct que me la genera netbeans y dentro de esta ya esta la carpeta dist que es donde se me genera el jar del proyecto, asi como la carpeta src donde estan mis archivos .java y demas carpetas que genera netbeans.
Para ejecutarlo yo tengo instalado mi java en C:\Archivos de programa\Java de donde salen las carpetas jdk1.6.0_03 y jre1.6.0_07, dentro de la carpeta lib\ext dentro de jre yo coloco mis archivos jar para los look and feel de java, librerias para manejos de excel, pdf, etc, lo que yo necesite y para correr mi jar desde linea de comandos invoco al jre dentro de esta carpeta y le paso como parametro la ruta de mi proyecto, otra forma para hacerlo "más portable" es copiar la carpeta del jre a la pc donde debo instalarlo y ejecutarlo de la misma manera (en este caso el jre de esa carpeta para correr mi jar).
Hasta aqui todo bien, pero cuando actualizo mi jre en la carpeta de C:\Archivos de programa\Java se me crea otra carpeta nueva con el jre mas reciente y ahora esta es la actual(con los parches que libera sun), entonces debo copiar todas mis librerias a esta nueva carpeta y dar de baja la otra, seria agradable que mis librerias extras yo las tuviera en otra carpeta y asi al actualizar mi jre no tuviera que mover todo de nuevo y solo pasar como parametro la ruta de mi carpeta con las librerias extras para que mi aplicacion las pudiera encontrar, es posible hacer algo asi?, no es inconveniente grave pero si seria mas simple para mi, gracias de antemano por todo, saludos.
  #4 (permalink)  
Antiguo 08/11/2008, 05:12
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Respuesta: clases java fuera de instalacion de jre

Colocar los .jar en lib/ext dentro del JDK es una mala practica que desafortunadamente se ha extendido mucho, pero es mala idea por, entre otras cosas, los mismos problemas que te estas encontrando.

Lo recomendable es aprender como funciona el concepto del CLASSPATH y configurarlo adecuadamente para nuestras aplicaciones. El "problema" es que distintas formas de aplicaciones (web, aplicaciones empaquetadas en .jar, aplicaciones de escritorio sin empaquetar...) configuran el classpath de forma ligeramente diferente, y mucha gente optar por la via rapida y facil, pero equivocada, de usar el directorio lib/ext.

En tu caso, como la aplicación acaba generando un .jar, tienes dos opciones:
.- La primera es arrancar la aplicacion configurando ese .jar, y los demas, en el classpath a través del flag -cp, y llamando a la clase principal. Con algo asi como "java -cp mi.jar;lib/miOtro.jar mi.clase"
.- La segunda es configurar el MANIFEST.MF para que diga cual es el la clase principal y cual es el classpath, y entonces basta con hacer "java -jar mi.jar"

Ojo que si lo llamas con java -jar, entonces el flag -cp no sirve de nada, y hay que configurar el MANIFEST.

S!
__________________
Para obtener respuestas, pregunta de forma inteligente o si no, pregunta lo que quieras que yo contestaré lo que me dé la gana.
  #5 (permalink)  
Antiguo 08/11/2008, 19:56
Avatar de haggenx  
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 823
Antigüedad: 17 años, 2 meses
Puntos: 24
Respuesta: clases java fuera de instalacion de jre

ok gracias, lo probare y te cuento
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:37.