首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么不受信任的代码不能更改Java日志记录下的日志级别?

为什么不受信任的代码不能更改Java日志记录下的日志级别?
EN

Stack Overflow用户
提问于 2010-03-17 06:07:06
回答 1查看 197关注 0票数 0

我有一个Java应用程序,它也可以作为applet运行。该应用程序还碰巧使用了一个名为BasicPlayer的库来播放.ogg文件。BasicPlayer有一个内置的记录器,它使用Apache Logging Commons通过内置的Java logger为BasicPlayer.class创建一个记录器。据我所知,关闭BasicPlayer日志记录的唯一方法是运行以下代码:

代码语言:javascript
复制
Logger.getLogger(BasicPlayer.class.getName()).setLevel(Level.OFF);

这在作为常规应用程序运行时运行得很好。但是,当作为小程序运行时,此代码将抛出SecurityException,因为出于某种原因,小程序不能更改非匿名记录器(see here for a sorta-explanation)的日志级别。

他们为什么要这么做?谁会关心applet是否会更改日志级别呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-03-17 06:34:28

他们为什么要这么做?谁会关心applet是否会更改日志级别呢?

首先,在主机JVM中运行的其他东西可能会使用Apache日志记录来跟踪applet正在做什么。如果小程序可以更改日志记录级别,则可以关闭审核。

需要指出的另一件事是,BasicPlayer是开源的,因此您还可以选择修改它的源代码,以禁用日志记录和重新构建。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2458514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档