微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何阻止外部库使用其消息污染应用程序输出?

如何解决如何阻止外部库使用其消息污染应用程序输出?

我用 Java 编写了一个控制台应用程序,它使用 Google Protocol Buffers 进行序列化。 但是,当使用该代码时,在库加载期间,它会输出一些关于非法反射访问操作的警告。

AFAIK,这是 Google 的一些小烦恼,不会真正影响任何事情,所以我希望我的应用程序不要将垃圾转储到输出。 同时,我显然希望我的应用能够正常输出自己的东西。

人们通常如何处理这样的事情? 处理这种具体情况的好方法是什么?

解决方法

最好的方法是添加一个记录器而不是使用标准的控制台输出。您可以阅读有关 slf4j 的信息。它比标准输出有很多优点。您可以拥有不同级别的日志——信息、调试、警告、错误等。因此您可以限制您阅读的信息量。此外,您将在文件中保留以前的输出,并且您还可以配置不同的 appender - 因此不同的类将它们的输出写入不同的文件。

基本上这是大多数java应用程序的首选方式,这是有原因的

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。