当您在IntelliJ内部运行服务器时,您可以在屏幕底部的窗口中看到控制台输出.
有没有办法格式化输出,以便IntelliJ识别类名并使它们可点击?然后,当我在服务器输出中看到一个类名时,我可以点击它并直接进入那里.
谢谢 :)
Jas*_*ger 27
从IntelliJ 14开始,以及通过IntelliJ设置挖掘的替代方案,一些试验和错误揭示了任何具有模式的东西
(anyfile.ext:line)
Run Code Online (Sandbox Code Playgroud)
.如果该名称已知任何文件,例如.(Whatever.java:55)在工作空间中除了库的文件之外,则在控制台中至少有一个变为文件链接.
我正在使用logback.所以至少在我的logback.xml中获取我的类的链接,我包含在我的消息模式中
.\(%class{0}.java:%line\)
Run Code Online (Sandbox Code Playgroud)
.\( \) - >一个点必须在文件名前面:行模式和文件名:括在括号中的行模式.在这种情况下,Logback要求转义字面括号.%class{0} - >只是没有包的classname.java - >这样它匹配完整的文件名:%line - >是代码的记录行实际上,我还有其他东西,.在该(filename:line)部分之前总是包含至少一个,因此它也被IntelliJ拾取.
<pattern>%highlight(%-5level) %d{yyyy-MM-dd'T'HH:mm:ss.SSS} %yellow([%thread]) %blue(%logger{36}\(%class{0}.java:%line\)) %msg%n</pattern>
Run Code Online (Sandbox Code Playgroud)
有.摘自在线帮助http://www.jetbrains.com/idea/webhelp/setting-log-options.html
如果您使用的是第三方日志记录工具,则可能需要生成消息的输出,该输出模仿与源代码的标准链接,如堆栈跟踪行(at.(:)).为此,您应该将特定的转换模式添加到log.xml配置文件中.例如,在log4j转换模式中,这将是
<param name="ConversionPattern" value="%-5p - [%-80m] - at %c.%M(%F:%L)%n"/>
Run Code Online (Sandbox Code Playgroud)
但是,使用完全限定的名称,方法名称等,产生的输出非常难看.
| 归档时间: |
|
| 查看次数: |
4945 次 |
| 最近记录: |