【发布时间】:2011-01-14 17:29:07
【问题描述】:
我有一个由 Spring Roo 生成的 maven 项目,并使用多种工具(checkstyle、pmd 等)来收集有关我的项目的信息。 (即我为此使用codehaus' sonar)
Roo makes heavy use of AspectJ Inter Type Declarations (ITD) 用于区分持久性、javabeans-getter/setter 等问题。
这些 ITD 是在编译时编入的,因此 checkstyle 和 pmd 等工具(在源代码级别工作)有很多误报。
我目前看到的唯一解决方案是停用对使用 ITD 的类的检查。
有更好的想法吗?
【问题讨论】:
-
我已经用谷歌搜索了一段时间,还与 SCA 工具的工具供应商进行了交谈。似乎这仍然是一个小众问题:-(
-
我们也使用 Roo 和 Sonar,所以我很想看看这个问题的答案......
-
啊,不成为唯一的感觉真好。所以你知道我说的问题吗?
-
您的问题似乎是您要求 SCA 工具处理他们不理解的语言的源代码,即“您的目标语言 + 方面”。为什么不在经过方面处理的代码而不是原始代码上运行分析工具?那么类型信息就是正确的,工具正在处理的语言就是它们所期望的。
-
这正是我正在谈论的解决方法。对我来说,问题不是如果,而是应该怎么做。对于我的特殊情况,roo 团队已经在考虑这个问题,所以我有希望:-)
标签: java maven-2 aspectj spring-roo static-code-analysis