Sonarqube in Intellij completely ignores java and kotlin files

Operating system: MacOS Tahoe 26.4.1

  • SonarQube for IntelliJ plugin version: 12.2.0.84584
  • IntelliJ version: 2026.1 Build #IU-261.22158.277, built on March 24, 2026
  • Programming language you’re coding in: Kotlin and java
  • Is connected mode used:
    • SonarQube Server

And a thorough description of the problem / question:

I have two projects. SonarQube is working fine with one (and older one) but failing with the newer smaller one. It doesn’t seem to think that my kotlin or java files should be analyzed. Non-Java/Kotlin files (Markdown, YAML, .gitignore) in the same project are analyzed normally.

Here is Claude’s writeup of the issue. Claude and I spent a couple of hours comparing the two projects to no avail.

SonarQube for IDE 12.2.0 — Java/Kotlin files never analyzed in IntelliJ 2026.1 Gradle
projects

Environment

  • IntelliJ IDEA 2026.1, build 261.22158.277
  • SonarQube for IDE 12.2.0.84584
  • Gradle Kotlin multi-module project
  • .idea/misc.xml has
    (workspace-model storage, not legacy .iml)
  • macOS 15 (Darwin 25.4.0)

Symptoms
All .kt and .java files show “This file is not automatically analyzed.” Manual analysis (play
button) runs and logs correctly-built module config but inputFiles: every time.
Non-Java/Kotlin files (Markdown, YAML, .gitignore) in the same project are analyzed normally.

Sloop log (every analysis of a Kotlin file)
Starting analysis with configuration: [
baseDir: /…/modules/protocol-parsers/src/main ← correct
sonar.java.binaries: /…/build/classes/kotlin/main ← correct, directory exists
Symptoms
All .kt and .java files show “This file is not automatically analyzed.” Manual analysis (play button) runs and logs correctly-built module config but inputFiles: every time. Non-Java/Kotlin files
(Markdown, YAML, .gitignore) in the same project are analyzed normally.

Sloop log (every analysis of a Kotlin file)
Starting analysis with configuration: [
baseDir: /…/modules/protocol-parsers/src/main ← correct
sonar.java.binaries: /…/build/classes/kotlin/main ← correct, directory exists
activeRules: [… 130 kotlin …] ← correct
inputFiles: ← always empty
]
No file to analyze

Additional findings

  • idea.log contains zero org.sonarlint entries despite #org.sonarlint=debug configured — the frontend plugin’s file-open listener is either not firing for Kotlin files or silently skipping them without logging.
  • The same IntelliJ install, same SonarQube server, and same plugin version work correctly in a second project that uses legacy .iml storage (ExternalStorageConfigurationManager absent/disabled).
  • Reproduces in both connected mode and standalone mode.
  • Reproduces after clearing the sloop’s H2 state database (sq-ide.mv.db), invalidating IntelliJ caches, and multiple restarts.
  • The module is correctly identified for the Kotlin file (the baseDir and classpath are right), but the file itself is never sent to the backend.

Hypothesis
ProjectFileIndex.isInSourceContent(file) (or equivalent) returns false for files in Gradle submodule source roots when IntelliJ 2026.1’s workspace model is active, causing the file-open listener to
silently skip Java/Kotlin files. Non-Java/Kotlin files use a less strict check and are tracked correctly.

Hi,

Welcome to the community and thanks for this report!

The current version of SonarQube for IntelliJ (formerly SonarLint) is 12.2.1. Can you upgrade and see if this is still replicable? And if it is, could you provide a verbose log from IDE startup through to where you (don’t) see the problem?

 
Thx,
Ann

That version of the plugin is not available in my intellij for download, yet, so I can’t install it.

I’m not comfortable sending you complete start-up logs as I’m pretty sure that someone here will object that sending you the complete list of jar files is a security issue. :-1:

Can you tell me anything about what I should look for? Somehow it is seeing lots of non-java or kotlin files like

inputFiles: [
file:///Users/michael.hirsch/Developer/stp/modules/trm-core/src/main/resources/proxy/requirements.txt (UTF-8)
file:///Users/michael.hirsch/Developer/stp/modules/trm-core/src/main/resources/proxy/start-message-capture.sh (UTF-8)
file:///Users/michael.hirsch/Developer/stp/modules/trm-core/src/main/resources/proxy/mitm_addon.py (UTF-8)
file:///Users/michael.hirsch/Developer/stp/modules/trm-core/src/main/resources/proxy/stp-cleanup.sh (UTF-8)
]

but anytime I ask it to scan a kotlin or java file I see

  inputFiles: [
  ]

Hi,

I’ve flagged this for the team. And even redacted logs would be valuable.

 
Ann