java - "disallowed assignment of parameters" Sonar 违规

标签 java sonarqube

我有以下代码,但出现 Sonar 违规错误:不允许分配参数 解决这个问题的最佳方法是什么?

   /**
     * @param lastAccessTime the lastAccessTime to set
     */
    public void setLastAccessTime(Date lastAccessTime)
    {
        this.lastAccessTime = lastAccessTime == null ? null : new Date(lastAccessTime.getTime());
    }

最佳答案

我怀疑这里发生了两件事之一:

1 - checkstyle 插件中有一个错误

2 - Sonar 分析的代码并不完全是您在此处发布的代码

我认为违规行为应适用于以下情况:

    /**
     * @param lastAccessTime the lastAccessTime to set
     */
    public void setLastAccessTime(Date lastAccessTime)
    {
        lastAccessTime = lastAccessTime == null ? null : new Date(lastAccessTime.getTime());
    }

因此,当您重新分配方法参数时,这是预期的,但在您的示例中并非如此,您将其分配给类字段,因此应该没问题。

尝试将方法参数更改为final,看看是否仍然出现违规情况。

关于java - "disallowed assignment of parameters" Sonar 违规,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25665812/

相关文章:

java - 从 SD 卡解压文件

java - Hibernate:如何将此标准重写为 HQL?

java - 为什么Eclipse无法检测到以cv开头的javacv函数

java - SonarQube 与 Jenkins

java - 用g++编译jvmti代理失败,但cc工作正常

javascript - 制作 1 和 0 的所有组合。代码在 java 中运行良好但在 js 中运行不佳

sonarqube - 让质量门违规导致增量分析失败

java - Java中的SQL注入(inject)攻击

java - Sonarqube 仅显示 Java 测试的一些测试覆盖率

java - 如何区分参数和局部变量