【问题标题】:B::Lint and Perl::Critic for static code analysisB::Lint 和 Perl::Critic 用于静态代码分析
【发布时间】:2012-05-30 12:40:00
【问题描述】:

我需要实现 lint 和 Perl::Critic 以在 Perl 中进行静态代码分析。我在 Perl 中找到了用于 lint 的 B::Lint 模块。

  1. 是否真的需要同时使用这两个模块进行静态代码分析?
  2. 如果是,那么这两个模块如何协同工作?

【问题讨论】:

  • B::Lint 对静态代码分析很有用,可以发现与 Perl::Critic 默认解决的问题不同的问题。 Perl::Critic 可能很容易扩展以解决 B::Lint 的问题。我对 B::Lint 的一个问题是它不理解某些语法,并给出错误的警告。使用 Perl::Critic 可以在目标代码中到处使用 ## no critic (policy_name) 覆盖此类问题。 B::Lint,据我所知,没有提供这样的设施。

标签: perl lint static-code-analysis perl-critic


【解决方案1】:

B::LintPerl::Critic 是独立的模块。

不需要同时使用这两个模块,但同时使用这两个模块很有用。

我为自己创建了一个包装脚本,以便按顺序运行这两个脚本。例如,要分析单个 Perl 源代码文件 (file.pl):

perlcritic --brutal --verbose 9 file.pl
perl -MO=Lint file.pl

【讨论】:

    猜你喜欢
    • 2011-04-09
    • 2012-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 2018-04-01
    • 1970-01-01
    相关资源
    最近更新 更多