2009-01-19 12 views
10

En la consola IntelliJ, los rastreos de pila contienen automáticamente hipervínculos que lo acercan a los archivos fuente relevantes. Los enlaces aparecen al final de cada línea en el formato (Log4jLoggerTest.java:25). Puedo configurar log4j para dar salida al texto en un formato similar.¿Puede IntelliJ crear hipervínculos al código fuente desde la salida log4j?

log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE} (%F:%L) - %m%n 

En eclipse, la consola convirtió automáticamente texto como este en enlaces. En IntelliJ, los rastros de pila son enlaces, pero mi propio resultado en la misma forma permanece sin vincular. ¿Hay alguna manera de hacer que IntelliJ haga lo mismo?

Respuesta

12

Si puede, trate este patrón:

 
<param name="ConversionPattern" value="%-5p - [%-80m] - at %c.%M(%F:%L)%n"/> 
+1

Gracias, esto funciona. La parte relevante del patrón parece ser toda la cadena "en% c.% M (% F:% L)" –

+0

Probé esto con intellij 12.0.4 y parece que no funciona, sería genial característica a pesar de –

+1

arañar el comentario anterior, simplemente olvidé compilar mi código con información de depuración: http://stackoverflow.com/questions/9937485/line-number-not-showing –

1

No creo que haya una manera. Pero creo que envié esto como una solicitud de función hace mucho tiempo. Tal vez deberías hacer lo mismo. Jetbrains escucha a sus clientes. Pero pueden pasar años antes de que implementen cosas como esta.

2

FYI, en Loback y IntelliJ 13 esto funcionó para mí:

<pattern>%d{dd-MM-yyyy} %d{HH:mm:ss} %p %m - at %C.%M\(%F:%L\)%n</pattern> 

Nota: necesitaba el "a" y también que necesitaba escapar del paréntesis También capital "C" es el nombre de clase completo en logback.

Con esta configuración me sale una salida como:

10-06-2014 10:10:58 INFO Bean 'mbeanServer' of type [class com.sun.jmx.mbeanserver.JmxMBeanServer] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) - at org.springframework.context.support.AbstractApplicationContext$BeanPostProcessorChecker.postProcessAfterInitialization(AbstractApplicationContext.java:1374) 

Y la parte final paréntesis aparece como un eslabón de IntelliJ.

3

Hay un complemento para IntelliJ IDEA para obtener enlaces clicables en su consola llamada Awesome Console.

Cuestiones relacionadas