2011-11-03 14 views
7

cómo usar log4j logging API en un proyecto eclipse rcp ?? Como solución, traté de crear un nuevo paquete OSGI que tenga un log4j jar, a continuación se muestra la estructura del paquete.Cómo usar log4j en eclipse rcp

log4j an external plugin

He embaló un aplicación RCP básica con miras (plantilla) llamado loggingtest .I've incluido el paquete log4j en la pestaña dependencias de loggingtest project.In el activador iniciar método coloqué el siguiente código

Logger logger = Logger.getLogger(Activator.class); 
logger.info("Info starting"); 
logger.warn("Warning starting"); 
logger.error("Error starting"); 

así que todo está bien hasta ahora soy capaz de utilizar la API de log4j ya mitad de camino a través, me quedé perplejo como dónde colocar el log4j.prope El archivo rties, ¿cómo puedo continuar para obtener un archivo de registro con todas las instrucciones de registro?

para ser más precisos a continuación es el contenido de mi archivo de manifiesto de proyecto loggingtest

Manifest-Version: 1.0 
Bundle-ManifestVersion: 2 
Bundle-Name: LoggingTest 
Bundle-SymbolicName: LoggingTest; singleton:=true 
Bundle-Version: 1.0.0.qualifier 
Bundle-Activator: loggingtest.Activator 
Require-Bundle: org.eclipse.ui, 
org.eclipse.core.runtime, 
log4j;bundle-version="1.0.0" 
Bundle-ActivationPolicy: lazy 
Bundle-RequiredExecutionEnvironment: JavaSE-1.6 
+0

Sólo si alguien no está ligado a log4j, Eclipse RCP proporciona su propia funcionalidad de registros - https://wiki.eclipse.org/FAQ_How_do_I_use_the_platform_logging_facility%3F que le permite trabajar dentro de la plataforma Eclipse y sin cortes manuales. –

Respuesta

5

Hay una posting de cómo hacerlo configuración Log4J en un OSGi-Medio Ambiente. También considere usar Pax Logging cuando trabaje con OSGi.

+1

seguí la misma publicación que funciona en IDE bastante bien, cuando intento exportar un producto que no puede generar un archivo de registro – srk

+0

, inicio su producto con -console y verifique mediante OSGi-console si el paquete de registro y los fragmentos se cargan e inician ... –

+1

He olvidado agregar el lo4j.propiedades a la ruta de compilación binaria y, finalmente, funcionó para mí después de agregar que para construir ruta, gratitud – srk

3

estoy usando log4j con mi aplicación RCP
esto es lo que debe hacer: simplemente introduce el plugin log4j (se puede obtener la versión 'osgified' de primavera Bundle Repositorio) y, a continuación, soltar a la carpeta 'dropin' de tu instalación de eclipse.
continuación, se debe añadir este plugin como dependencie de la aplicación como en su clase de activador, haga lo siguiente:
URL confURL = getBundle().getEntry("log4j.properties"); PropertyConfigurator.configure(FileLocator.toFileURL(confURL).getFile());

y soltar este '' log4j.properties en su carpeta raíz de la aplicación
lo siento sobre mi inglés

0
  1. Agregue log4j.jar en su proyecto.
  2. Agregue la referencia en MANIFEST.MF. Require-Bundle: org.apache.log4j;bundle-version="1.2.15"
  3. Agregue la referencia en build.properties.

bin.includes = plugin.xml,\ META-INF/,\ .,\ lib/log4j-1.2.17.jar

  1. Uso del registrador de archivos .java.

PropertyConfigurator.configure(log4jConfPath); LOGGER.debug("STARTING APPLICATION ..");

me encontré con este tutorial útil. Por favor, compruebe - Add log4j to RCP Application

Cuestiones relacionadas