我想在Netbeans输出窗口中获得彩色输出。
Linux和Windows控制台中的Ansi-Output工作得很好。但不在IDE中。
有没有办法让这项工作在Netbeans'输出窗口?
根据这个 https://netbeans.org/bugzilla/show_bug.cgi?id=214546 它应该可以工作,但它不适用于我当前的Netbeans 8.0.1安装(Linux和Windows)。
有关如何做到这一点的任何提示?
答案 0 :(得分:4)
我自己在Windows 7上使用Netbeans 8.0.1。我只是尝试了ANSI转义码,它可以工作。例如:
String greenBold = "\033[32;1m";
String reset = "\033[0m";
System.out.println("before" + greenBold + " green " + reset + "after");
答案 1 :(得分:1)
我使用的是 NetBeans 12.3,但遇到了同样的问题。问题在于捆绑的 Maven(版本 3.6.3)。 当我更改为安装在系统上的 Maven 时,它可以工作。请注意,我系统上安装的 Maven 版本与捆绑版本相同 - 3.6.3。
答案 2 :(得分:0)
使用Maven 3.5.x时似乎有问题。
请参阅:
我首先使用旧的Maven 3.3.9尝试了NB 8.2,并且开箱即用。整个输出保持原样,但是我的应用程序自己的日志按预期着色。
使用Maven 3.5.2和3.5.4时,颜色根本不起作用。因此,我必须将MAVEN_OPTS环境变量设置为“ -Djansi.passthrough = true”(如第一个链接中所述),然后重新启动NetBeans。问题在于,现在整个输出的颜色不同,并且错误堆栈跟踪不再包含代码链接。所以我转回去。
顺便说一句。使用log4j2的%highlight{}
时,我还必须设置disableAnsi="false"
才能获得所需的效果:
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} %highlight{%-5level} [%t] %location --- %msg%n%throwable" disableAnsi="false" />
</Console>