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

Ejecutar archivos .class en aplicacion de Java

Estas en el tema de Ejecutar archivos .class en aplicacion de Java en el foro de Java en Foros del Web. Saludos Tengo una aplicación en lenguaje Java (desarrollada en Netbeans) la cual consiste en ingresar una expresion regular y que esta aplicación genere un .java ...
  #1 (permalink)  
Antiguo 01/10/2010, 00:07
 
Fecha de Ingreso: junio-2010
Mensajes: 1
Antigüedad: 14 años, 4 meses
Puntos: 0
Ejecutar archivos .class en aplicacion de Java

Saludos

Tengo una aplicación en lenguaje Java (desarrollada en Netbeans) la cual consiste en ingresar una expresion regular y que esta aplicación genere un .java el cual esta misma aplicación lo utilice para validar cadenas de prueba. Por ejemplo:
- Ingreso a* (la letra a puede venir 0 o más veces)
- luego el programa genera el archivo .java con las instrucciones necesarias.

Mi problema es acceder a esa clase generada y ejecutarla desde mi aplicación para validar cadenas de prueba. Sabe alguien de ustedes como ejecutar clases externas?
  #2 (permalink)  
Antiguo 01/10/2010, 01:18
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 16 años, 2 meses
Puntos: 188
Respuesta: Ejecutar archivos .class en aplicacion de Java

Bien puedes meter tu ClaseExterna.class en el classpath de tu aplicación e importarla directamente en los archivos java que vayas creando, teniendo en cuenta que su ruta será el path relativo de la aplicación más las subrutas internas correspondientes (carpetas) o bien puedes meterla en una librería (útil si son varias clases) e importar la librería diretamente en el proyecto.
  #3 (permalink)  
Antiguo 03/10/2010, 11:32
Avatar de dackiller  
Fecha de Ingreso: septiembre-2003
Ubicación: The Matrix
Mensajes: 341
Antigüedad: 21 años, 2 meses
Puntos: 4
Respuesta: Ejecutar archivos .class en aplicacion de Java

Cita:
Iniciado por Fuzzylog Ver Mensaje
Bien puedes meter tu ClaseExterna.class en el classpath de tu aplicación e importarla directamente en los archivos java que vayas creando, teniendo en cuenta que su ruta será el path relativo de la aplicación más las subrutas internas correspondientes (carpetas) o bien puedes meterla en una librería (útil si son varias clases) e importar la librería diretamente en el proyecto.
Estoy de acuerdo con Fuzzylog, pero ese metodo significaria reiniciar la aplicacion para volver a cargar el classpath.

Otra solucion seria impllementar tu propio classpath, al tener tu propio classpath, podrias definirlo tu classLoader el cual va contener los archivos .class.

Busca en google, "loading class from byte[]"

En stackoverflow.com hay un excelente ejemplo del metodo defineClass de la clase ClassLoader que es la que se encarga de definir las clases.

Saludos
__________________
--
NOTA: Si haz conseguido la solución a tu problema, por favor edita el titulo del tema colocando el prefijo [SOLUCIONADO], para que otros usuarios puedan encontrar soluciones más rápido.

Etiquetas: clases, externas
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 17:46.