如何解决使用 maven 故障安全的子进程的日志消息延迟
我使用 JPMS 测试模块,调试时我使用以下命令:
mvn -Dmaven.failsafe.debug="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -Xnoagent -Djava.compiler=NONE" clean verify
因此,所有测试都在子进程中执行。然而,有一个问题。在子进程中执行测试时
然后只有在执行测试后才会在控制台上打印消息。但是,我需要在调试期间立即查看消息。
正如我发现消息在 org.apache.maven.surefire.booter.spi.LegacyMasterProcessChannelEncoder
private void encodeAndPrintEvent( StringBuilder event,boolean sendImmediately )
{
try
{
//noinspection ResultOfMethodCallIgnored
Thread.interrupted();
byte[] array = event.append( '\n' )
.toString()
.getBytes( STREAM_ENCODING );
ByteBuffer bb = ByteBuffer.wrap( array );
if ( sendImmediately )
{
out.write( bb ); <=========== AFTER THIS LINE
}
else
{
out.writeBuffered( bb );
}
}
catch ( ClosedChannelException e )
{
if ( !onExit )
{
DumpErrorSingleton.getSingleton()
.dumpException( e,"Channel closed while writing the event '" + event + "'." );
}
}
…..
}
如果有任何解决方案/标志可以立即在控制台上打印来自子进程的日志消息,有人能坐下吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。