【问题标题】:Is there any way by which we can find out if try block or "new" keyword is used in java code?有什么方法可以找出 java 代码中是否使用了 try 块或“new”关键字?
【发布时间】:2016-03-31 13:26:24
【问题描述】:

作为实现自定义编码指南检查器的一部分,我们需要确保我们的类中没有任何 try-catch 块,或者“new”关键字不用于创建对象。 有什么方法可以实现吗?

【问题讨论】:

  • 您不希望使用“new”关键字来创建新实例...;那么,您还打算怎么做呢?
  • grep 你的源代码?
  • 这个问题有点太笼统了。当然有办法在你的代码中不包含try-catch:根本不处理异常。我想说的是,您不能以任意方式指定指导方针;您需要先选择一种架构,然后再决定哪些指南是有意义的。
  • 解析代码并寻找那些结构?我快速搜索了“Java 解析器”并找到了一个。您还可以分析字节码。
  • @khelwood String s = "you could try that, but you'd get false positives";

标签: java coding-style code-analysis


【解决方案1】:

您应该使用一些统计分析工具,例如SonarQube,并为它写下您的own rule(或在网上找到一个)。

如果您需要在构建期间检查代码规则的合规性,那么您应该使用PMD maven plugin 之类的东西。无论如何,您的问题是关于统计代码分析,您必须找到合适且可定制的工具 - 编写自己的工具很棘手:)

【讨论】:

  • 想法是将此编码指南检查器集成为 maven 插件的一部分,如果发现任何违规行为,则构建失败。
  • 那么你应该使用类似maven.apache.org/plugins/maven-pmd-plugin 的东西无论如何,你的出发点是谷歌搜索类似“statistical analysis maven”的东西
猜你喜欢
  • 1970-01-01
  • 2018-08-12
  • 2010-09-17
  • 1970-01-01
  • 2014-05-03
  • 2020-11-09
  • 2018-02-10
  • 1970-01-01
  • 2010-12-11
相关资源
最近更新 更多