MavenCli doMain() 方法构建日志到 LOGGER.info 而不是 System.out

MavenCli doMain() method build log to LOGGER.info instead of System.out

我正在使用 maven cli 从 Java 到 运行 maven 命令。由于下面的方法只接受 PrintStream 对象作为输入,我如何将 Maven 构建日志写入 Logger 而不是 System.out。我并没有尝试将所有 system.out 和 system.err 放到记录器上。我只需要将参数传递给 MavenCli domain() 方法,以便我可以将方法(构建)日志重定向到 Logger。

MavenCli cli = new MavenCli();
Integer result = cli.doMain(new String[]{"clean","package","-Dmaven.test.skip=true"},
                pathToPom,
                System.out, System.out);

已解决问题。正在将构建日志写入临时文本文件。 MavenCli cli = new MavenCli(); 字符串目录 = AppProperties.getEnvProperty("queue"); PrintStream stdout = new PrintStream( new File("temp.txt") ); 结果 = cli.doMain(新字符串[]{"clean","package","-Dmaven.test.skip=true"}, 路径到Pom, 标准输出,标准输出);