Upgrading to 7.9 version - SonarQube requires Java 11+ to run

  • OS: Windows Server 2012 R2 Data Center
  • Current version: SonarQube Developer 7.7
  • Upgrading to SonarQube Developer 7.9.1
  • This is what we have done:
    • Install Java SDK 11.
    • Restarted the server
    • I download the latest Developer edition from https://www.sonarqube.org/downloads/.
    • Stop the windows service.
    • Unpack and copy the files to new folder
    • Copy the sonar.properties and wrapper.conf files from old version (7.7).
    • Restarted the server, and start the Windows Service again.
    • Delete the Windows service and re-create it.
    • I have also tried Community edition

We have done what was listed above and when started the SonarQube Windows Service, it keeps telling us that SonarQube can only be run on Java 11+ even though we have installed Java 11 and 13.

When I tried to start the Windows service again, it keeps telling us that it can’t be started and exit unexpectedly.

I have attached the logs at the end of this topic. The logs keep telling me that it needs to run Java 11+.

Did we miss anything here?

We have already installed Java SDK 11:
The PATH and JAVA_HOME environment path have also been set:


--> Wrapper Started as Service
Launching a JVM...
Wrapper (Version 3.2.3) http://wrapper.tanukisoftware.org
  Copyright 1999-2006 Tanuki Software, Inc.  All Rights Reserved.

WrapperSimpleApp: Encountered an error running main: java.lang.IllegalStateException: SonarQube requires Java 11+ to run
java.lang.IllegalStateException: SonarQube requires Java 11+ to run
	at org.sonar.application.App.checkJavaVersion(App.java:93)
	at org.sonar.application.App.start(App.java:56)
	at org.sonar.application.App.main(App.java:98)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:240)
	at java.lang.Thread.run(Unknown Source)
<-- Wrapper Stopped
1 Like

I solve the problem by doing the following:

1 Like


Welcome to the community!

I’m glad you worked through your problem. Thanks for sharing your solution!


After changes made in wrapper.conf it is working fine

Path to JVM executable. By default it must be available in PATH.

Can be an absolute path, for example:

wrapper.java.command=C:\Program Files\Java\jdk-13.0.2\bin\java