【问题标题】:How to create config properties for tinylog at runtime with User preferences如何在运行时使用用户首选项为 tinylog 创建配置属性
【发布时间】:2016-10-21 06:31:41
【问题描述】:

我希望用户能够选择将我的应用程序中的错误日志发送到的位置。我目前正在使用 tinylog。

我已经使用他们的示例代码来配置错误写入的位置(通过 Swing fileChooser 选择用户首选项)。

他们的例子是:

Configurator.defaultConfig()
           .writer(new FileWriter("log.txt"))
           .level(Level.WARNING)
           .activate();

我改成了:

Writer fwError= new FileWriter(userPrefs.get("PathForError", null),true);
Configurator.defaultConfig().writer(fwError).level(Level.WARNING).activate();

但是我得到如下错误"Type mismatch: cannot convert from FileWriter to Writer".

我怎样才能使这个转换工作,为什么这个例子不工作?

【问题讨论】:

  • userPrefs.get("PathForError", null)return 是什么意思?一个字符串? @Sebastian 尝试将 fwError 的类型更改为 FileWriter
  • 是的,它返回一个字符串
  • 即使我使用给出的示例,我也会收到错误类型配置器中的方法 writer(Writer) 不适用于参数 (FileWriter)
  • 我个人使用 slf4j 和 simpleLogger,命令是:System.setProperty(org.slf4j.impl.SimpleLogger.LOG_FILE_KEY, MyFilePath); 我告诉你这是因为 simpleLogger 是......简单:p
  • tinylogger 也很简单。我想暂时保留这个

标签: java logging tinylog


【解决方案1】:

org.pmw.tinylog.writers.Writer 不是 java.io.FileWriter 的祖先。尝试使用完全合格的 org.pmw.tinylog.writers.FileWriter()

【讨论】:

  • 啊哈。非常感谢。
猜你喜欢
  • 1970-01-01
  • 2011-01-05
  • 1970-01-01
  • 2011-09-26
  • 2016-04-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多