FN on S4449 in SonarQube Server for jspecify @NullMarked annotation

SonarQube Server: v2025.2 (105476)
SonarQube for IDE: 10.22.0.81244

When using the @NullMarked annotation from JSpecify, no issue is reported by SonarQube Server when I pass null as an argument using code similar to this:

import org.jspecify.annotations.NullMarked;

@NullMarked
class MyClass {
  public void myMethod() {
    myOtherMethod(null);
  }

  public void myOtherMethod(String s) {
    // ...
  }
}

But the above code does trigger an issue on rule S4449 in SonarQube for IDE, both when running standalone and when bound to the SonarQube Server project. This matches my expectation.

I have double-checked that S4449 is enabled in the Server config.

What could be the reason I’m seeing this difference in behaviour between SonarQube Server and SonarQube for IDE?

Hi,

Welcome to the community!

At a guess, this is about the information available in the IDE versus in full analysis. As a starting point, could you share your analysis log?

The analysis / scanner log is what’s output from the analysis command. Hopefully, the log you provide - redacted as necessary - will include that command as well.

This guide will help you find them.

 
Thx,
Ann

Hi, here’s the (cleaned) output from mvn sonar:sonar running a full analysis on SonarQube Server (where I don’t see any issues for S4449). Please let me know if it was something else you were looking for.

sonar.log (20.5 KB)

Hi,

Thanks for the log. Nothing is jumping out at me here, so I’m going to flag this for the language experts.

 
Ann

1 Like