我想知道何时更改了System属性。我在应用程序服务器中有一个应用程序,它以某种方式改变了系统属性(我认为System.setProperty()
)。我正在看一看,我找到了不同的方法:
有什么建议吗?提前谢谢。
答案 0 :(得分:6)
您可以使用自己的自定义子类替换系统属性。
MyProperties newProps = new MyProperties(System.getProperties());
System.setProperties(newProps);
然后,只需编写一个属性的子类来挂钩相关的方法。
答案 1 :(得分:1)
如果您主要想找到问题,我会考虑使用SecurityManager
。它有几种方法checkPropertiesAccess()
和checkPropertyAccess()
,看起来它们可以帮助您 找到 这个问题,但不一定能够'系统属性发生更改时通知您。'