问题描述
我使用 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 (将#修改为@)