我正在基于Spring编写一个Java Webapp。关于我可能添加到非法Pkgs导入声明中的内容的任何建议吗?我刚刚在禁止列表中添加了javax.transaction.Transactional
,因为它在重构时让我感到困惑,因为我不小心使用了javax的@Transactional
注释,而不是Spring的注释,这破坏了我的JPA事务。寻找其他包裹或特定班级,我应该主动禁止!
到目前为止我有什么
<property name="illegalPkgs" value="sun, java.sql, java.awt, javax.swing, javax.transaction.Transaction"/>
答案 0 :(得分:1)
除了默认的sun
或com.sun,sun
,为了明确起见,IllegalImport检查对检查特定于项目的规则很有帮助。
例如,如果您要确保每个人都使用log4j作为日志记录框架,则可以将java.util.logging,org.apache.commons.logging
添加到列表中。可能更多,这取决于您对传递依赖项的控制程度。
另一个示例是,如果要限制对代码库的某些部分使用反射,则可以添加java.lang.reflect,org.reflections
。
仅使用 IllegalImport 不会带来多少收益。您可能还需要其他检查,例如 IllegalType , IllegalInstantiation 或ImportControl。通常,为此使用Checkstyle并不是灵丹妙药。