使用 pom 将 Maven 输出发送到控制台和日志文件

2024-03-03

Question:在 Eclipse 中运行 Maven 时,如何将控制台输出发送到文件?

我想使用 pom 设置或 Maven 插件来实现这一点。我愿意not想要修改运行配置或maven系统设置。

作为参考,我使用的是 Windows 7、Eclipse Luna、Java 6、Maven 3。


As per 官方命令行选项 http://maven.apache.org/ref/3.3.9/maven-embedder/cli.html你可以用-l,--log-file <arg>其中提供:

所有构建输出都将存放的日志文件。

因此,运行:

mvn clean install -l output.log

不会将任何内容打印到控制台并自动重定向整个构建输出 to the output.log file.

如果您不想每次都键入它(或者您实际上不想使用命令行)并且希望将其作为默认选项(尽管我认为这种情况很少见),您可以使用可用的新命令行选项行为自版本以来3.3.1 https://maven.apache.org/docs/3.3.1/release-notes.html并有一个.mvn相关文件夹pom.xml文件位于并且maven.config文件中只需提供以下行:

-l output.log

那就是.mvn/maven.config文件替换MAVEN_OPTIONS只是为了它的项目,locally它被创建的位置,以及它提供的选项,不会影响其他构建(根据 Maven 设置)MAVEN_OPTIONS.

这是一个与 IDE 无关的解决方案(它是 Maven 的一个新的内置功能)并且是项目本地的,但仍然无法通过简单的 POM 编辑来提供,这是从第一阶段以来无法实现的。Maven 默认生命周期阶段 https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html is validate, which:

验证项目是否正确并且所有必要的信息均可用

也就是说,在构建期间,因此当构建时已经开始了(和生成的输出),它验证pom.xml文件,因此在该阶段根据某些 POM 属性/插件重定向构建输出为时已晚。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 pom 将 Maven 输出发送到控制台和日志文件 的相关文章

随机推荐