How do we support multiple node.js and jdk versions?

Our organization is currently running Sonarqube 9.9.5 enterprise edition. A couple teams moved to using Node.js 20 and Typescript 5, and started seeing issues with their scans. Migrating to Sonarqube 10 appears to be a solution to get Node 20 support.

I checked the release notes and summarized the supported Node.js and Java versions as the followings:

SonarQube 10.4, 10.5 :
End of support of Node.js 16 in 10.5
End of support of Node.js 14 in 10.4
End of support of Java 11 in 10.4

SonarQube 10.2, 10.3 :
Java 17 is the minimum recommended version
Node.js 20 is the recommended version

SonarQube 10, 10.1 :
Java 11/17
Node.js 14, 17+, recommend 18

We have projects using different versions of Java (11/18) and Node.js (16, 18, 20). Is it safe to migrate to the latest version of Sonarqube? Is it going to impact the projects using the older versions of Java and Node.js?

I appreciate any comment to this problem we’re facing. Thanks in advance.

Hey there.

The version of Java/NodeJS that supports analyzing your projects is distinct from the version of Java/NodeJS that you project runs on / is built with.

You can analyze any supported version of NodeJS (? - 20) / Java (6 - 21) with SonarQube v10.5. You just might need to control which version the scanner itself uses to execute analysis.

The docs on Scanner Environment can help.

1 Like