【发布时间】:2017-04-02 16:27:42
【问题描述】:
othersMap.put("maskedPan", Class.forName("Some Class"));
删除对动态类加载的这种使用。
规则
更新日志 类不应动态加载 动态加载的类可能包含由静态类初始化程序执行的恶意代码。 IE。您甚至不必实例化或显式调用此类类上的方法就容易受到攻击。 这条规则在每次使用动态类加载时都会引发一个问题。 不合规代码示例
String className = System.getProperty("messageClassName");
Class clazz = Class.forName(className); // Noncompliant
见
【问题讨论】:
-
你应该描述你想做什么;为什么动态加载首先存在。
-
因为这是要求。或者您可以说动态加载用于运行时,但在 SONAR 中进行测试时,它会捕获异常。如何解决这个我尝试使用静态但无法解决。请帮助我们将不胜感激。
-
为什么会有javascript标签?
-
抱歉,现在误删了。
标签: java string dynamic-class-loaders