在控制台输出中创建到项目文件的超链接

mma*_*ar1 4 java console log4j intellij-idea hyperlink

我有什么办法可以写出控制台输出的链接,单击该链接可以直接指向Intellij中的项目文件?

例如,当运行时异常发生时,就会发生这种情况。我看到了堆栈跟踪,可以单击控制台中的链接,将我定向到问题所在。在这里,我可以单击DatabaseConfiguration.java,然后将其重定向到Intellij中的该文件。 在此处输入图片说明

我想做的是输出一个指向readme.txt文件的链接,该文件在main启动时写入控制台。单击它会在Intellij中打开readme.txt。

我还使用log4j并将输出定向到控制台,这可能会影响解决方案。这是我的转换模式:

log4j.appender.FILE.layout.conversionPattern=%d{HH:mm:ss,SSS} %-5p [%c] %m%n
Run Code Online (Sandbox Code Playgroud)

Jav*_*aru 6

IDEA将在控制台中为与以下模式匹配的任何文本创建一个链接:

(${FileName}.${FileExtention}:${lineNum})
Run Code Online (Sandbox Code Playgroud)

或作为正则表达式:

\([\w \.\-]+\.[\w]*:[\d]+\)
Run Code Online (Sandbox Code Playgroud)

例如:(ErrorNotes.txt:10)

请注意,您需要包括括号。对于实际的类,可以在log4j模式中使用以下命令:(%F:%L)例如:若要引用另一个类或文件,则必须在括号内输出实际的文件名,扩展名和行号。 ,您自己,因为log4j只能访问当前类的信息。例如:

logger.error("A FluxCapacitorExcpetion #88 has occurred. See (Error Details.txt:542) for more details.")
Run Code Online (Sandbox Code Playgroud)