【问题标题】:Maven and properties for slf4j simpleloggerslf4j simplelogger 的 Maven 和属性
【发布时间】:2015-05-04 18:37:01
【问题描述】:

我在运行时不理解某些行为:

mvn -V clean -Dorg.slf4j.simpleLogger.showThreadName=true

我明白了:

Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1; 2014-12- 14T18:29:23+01:00)
Java version: 1.8.0_31, vendor: Oracle Corporation
...
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------

所以,看起来属性 org.slf4j.simpleLogger.showThreadName 不被 slf4j 识别

当我在conf/logging/simplelogger.properties 中更改此属性时,我得到:

Apache Maven 3.2.5 (12a6b3acb947671f09b81f49094c53f426d8cea1; 2014-12-14T18:29:23+01:00)
Java version: 1.8.0_31, vendor: Oracle Corporation
...
[main] [INFO] Scanning for projects...
[main] [INFO] ------------------------------------------------------------------------ 

现在我得到了我的预期。

mvn help:system -Dorg.slf4j.simpleLogger.showThreadName=true 也表示该属性已设置。

我做错了什么?

我想使用 cli 来设置 sl4j 的属性。我不想更改 Maven 内部配置文件。

【问题讨论】:

  • 尝试在MAVEN_OPTS, export MAVEN_OPTS="-Dorg.slf4j.simpleLogger.showThreadName=true"中设置这个

标签: maven logging slf4j


【解决方案1】:

-D optionmvn 将参数设置为 maven property。 org.slf4j.simpleLogger.showThreadName 是一个Java system property。 Maven 属性包括 Java 系统属性,但反之则不然。

将 java 系统属性传递给 maven 使用的库(例如 slf4j)的最简单方法是将其添加到 MAVEN_OPTS 环境变量中。

【讨论】:

    猜你喜欢
    • 2015-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 2013-10-01
    • 1970-01-01
    • 2016-04-20
    • 2015-02-24
    相关资源
    最近更新 更多